一种自动测试方法及装置制造方法

文档序号:6634718阅读:179来源:国知局
一种自动测试方法及装置制造方法
【专利摘要】本发明实施例公开了一种自动测试方法,所述方法包括:通过视频采集器获取测试人员操作预设设备的操作信息;对所述操作信息进行识别;根据识别出的操作信息编制控制程序;根据所述控制程序驱动相应设备进行操作,以模拟测试人员的操作实现对测试对象的测试。此外,本发明实施例还公开了一种自动测试装置。本发明提供的自动测试方法和装置贴合人工测试的场景,因此对测试软件的测试结果更加准确。此外,由于所述自动测试方法和装置不需要在被测对象所在的计算机上运行,所以不会占用系统资源,提高了被测对象的运行效率。
【专利说明】一种自动测试方法及装置

【技术领域】
[0001]本发明涉及计算机领域,尤其涉及一种自动测试方法及装置。

【背景技术】
[0002]随着计算机软件越来越复杂,软件测试的工作量也越来越大,传统的手动重复测试效率低且出错率高,已无法满足现在对软件测试的要求。而自动测试的出现不仅代替手动测试高效完成重复性的测试工作,同时提高了测试的准确性。
[0003]现有技术采用编制自动测试脚本的方式来测试被测软件,由于自动测试脚本的质量依赖于软件工程师对被测软件特性、测试流程、应用场景等的熟悉程度以及对编程技术的掌握程度,所以自动测试软件本身的质量难以保证,也就直接影响到测试结果的正确性。例如,当自动测试脚本在测试过程中出现问题时,有时很难分清楚到底是被测软件的原因还是自动测试脚本本身的原因;而当自动测试脚本对被测软件的测试结果是正确无误时,也并不代表被测软件真的没有任何问题。
[0004]此外,所述自动测试脚本需要在被测软件所在的计算机上运行,因此占用了该计算机的系统资源,降低了被测软件运行的效率。


【发明内容】

[0005]为了解决现有技术的上述技术问题,本发明提供了一种自动测试方法及装置,实现了提高自动测试的准确率和效率。
[0006]本发明实施例提供了一种自动测试方法,所述方法包括:
[0007]通过视频采集器获取测试人员操作预设设备的操作信息;
[0008]对所述操作信息进行识别;
[0009]根据识别出的操作信息编制控制程序;
[0010]根据所述控制程序驱动相应设备进行操作,以模拟测试人员的操作实现对测试对象的测试。
[0011]优选的,当所述预设设备为鼠标时,所述操作信息包括:所述鼠标的点击动作和移动轨迹;
[0012]当所述预设设备为键盘时,所述操作信息包括:按下动作和对应的按键;
[0013]当所述预设设备为显示屏时,所述操作信息包括:点击动作和对应的坐标。
[0014]优选的,所述根据所述控制程序驱动相应设备进行操作具体为:
[0015]根据所述控制程序驱动所述预设设备相应的虚拟设备进行操作;
[0016]或,
[0017]根据所述控制程序驱动机械设备对所述预设设备进行操作。
[0018]本发明实施例还提供了一种自动测试装置,所述装置包括:获取单元、识别单元、编制单元和操作单元;
[0019]其中,所述获取单元与所述识别单元连接,所述识别单元与所述编制单元连接,所述编制单元与所述操作单元连接;
[0020]所述获取单元,用于通过视频采集器获取测试人员操作预设设备的操作信息;
[0021]所述识别单元,用于对所述操作信息进行识别;
[0022]所述编制单元,用于根据识别出的操作信息编制控制程序;
[0023]所述操作单元,用于根据所述控制程序驱动相应设备进行操作,以模拟测试人员的操作实现对测试对象的测试。
[0024]本发明实施例提供了一种自动测试方法,所述方法包括:
[0025]根据测试人员的测试操作步骤编制描述性测试脚本;
[0026]根据所述描述性测试脚本从数据库中查询相应的信息,所述信息包括坐标信息;
[0027]根据所述信息和所述描述性测试脚本编制控制程序;
[0028]根据所述控制程序驱动相应设备进行操作,以模拟测试人员的操作实现对测试对象的测试。
[0029]优选的,所述根据所述控制程序驱动相应设备进行操作具体为:
[0030]根据所述控制程序驱动所述预设设备相应的虚拟设备进行操作;
[0031]或,
[0032]根据所述控制程序驱动机械设备对所述预设设备进行操作。
[0033]本发明实施例还提供了一种自动测试装置,所述装置包括:脚本编制单元、查询单元、控制程序编制单元和操作单元;
[0034]其中,所述脚本编制单元与所述查询单元连接,所述查询单元与所述控制程序编制单元连接,所述控制程序编制单元与所述操作单元连接;
[0035]所述脚本编制单元,用于根据测试人员的测试操作步骤编制测试脚本;
[0036]所述查询单元,用于根据所述描述性测试脚本从数据库中查询相应的信息,所述信息包括坐标信息;
[0037]所述控制程序编制单元,用于根据所述信息和所述描述性测试脚本编制控制程序;
[0038]所述操作单元,用于根据所述控制程序驱动相应设备进行操作,以模拟测试人员的操作实现对测试对象的测试。
[0039]相对于现有技术,本发明具有如下有益效果:
[0040]本发明提供的自动测试方法和装置更加贴合人工测试的场景,因此对测试软件的测试结果更加准确。此外,由于所述自动测试方法和装置不需要在被测对象所在的计算机上运行,所以不会占用系统资源,提高了被测对象的运行效率。

【专利附图】

【附图说明】
[0041]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0042]图1为本发明提供的一种自动测试方法实施例一的流程图;
[0043]图2为本发明提供的一种自动测试方法实施例二的流程图;
[0044]图3为本发明提供的一种自动测试装置实施例一的结构框图;
[0045]图4为本发明提供的一种自动测试装置实施例二的结构框图。

【具体实施方式】
[0046]为了使本【技术领域】的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0047]方法实施例一:
[0048]参见图1,该图为本实施例提供的一种自动测试方法的实施例一的流程图。
[0049]本实施例提供的自动测试方法包括:
[0050]SlOl:通过视频采集器获取测试人员操作预设设备的操作信息。
[0051]所述预设设备可以是鼠标、键盘、显示器或其他输入设备等,本发明不做具体限定。在本实施例中,当所述预设设备为鼠标时,所述操作信息包括:所述鼠标的点击动作和移动轨迹。由于鼠标通常会有左、右两个按键,所以所述点击动作包括点击左边按键的动作和点击右边按键的动作。如果鼠标包含滚轮,所述操作信息还包括滚轮旋转的角度。所述移动轨迹是指鼠标光标在显示屏上移动的轨迹。
[0052]当所述预设设备为键盘时,所述操作信息包括:按下动作和对应的按键。对于普通的仅具有按键的键盘,所述操作信息包括按下按键的动作本身以及相应的按键。在实际应用中,所述键盘可能还包括触摸按钮或触摸面板,通过触摸该触摸按钮或触摸面板来达到移动显示屏中光标的位置的目的,此时,所述操作信息还应当包括光标移动的轨迹。
[0053]当所述预设设备为显示屏时,所述操作信息包括:点击动作和对应的坐标。在实际应用中,所述显示屏可能会为触摸屏,在这种情况下,所述操作信息包括点击动作本身和触摸屏上相应的坐标。
[0054]可以理解的是,所述预设设备可以为鼠标、键盘、显示器等其中一种设备,也可以为其中两种或两种以上设备的组合,本发明不做具体限定,本领域技术人员可以根据实际情况自行选择。
[0055]S102:对所述操作信息进行识别。
[0056]当视频采集器获取到所述测试人员操作预设设备的操作信息后,对所述操作信息进行识别,即通过视频文件进行解析,分析出相应的操作信息。举例而言,当所述预设设备为鼠标时,识别出的操作信息可能为鼠标对应的光标在某一时间段内由坐标(Xl,X2)移动到坐标(x3,X4),或在时间为^时点击了左边按键等。当所述预设设备为键盘时,识别出的操作信息可能为在时间为t2时按下了按键“空格”或同时按下了按键“Ctrl”和“Shift”等坐寸ο
[0057]S103:根据识别出的操作信息编制控制程序。
[0058]S104:根据所述控制程序驱动相应设备进行操作,以模拟测试人员的操作实现对测试对象的测试。
[0059]在本实施例中,所述根据所述控制程序驱动相应设备进行操作具体为:根据所述控制程序驱动所述预设设备相应的虚拟设备进行操作;或,根据所述控制程序驱动机械设备对所述预设设备进行操作。
[0060]本实施例通过识别视频采集器采集的测试人员的测试被测对象时的操作,并编制控制程序以驱动虚拟设备或机械设备来模拟测试人员进行测试操作,相比较于现有技术,本实施例更加贴合人工测试的场景,因此对测试软件的测试结果更加准确。此外,由于所述自动测试方法不需要在被测对象所在的计算机上运行,所以不会占用系统资源,提高了被测对象的运行效率。
[0061]方法实施例二
[0062]本实施例与方法实施例一的区别在于:方法实施例一通过视频采集操作人员的操作信息,根据所述操作信息来编制控制程序;而本实施例直接通过编制描述性测试脚本的方式来记录操作人员的操作信息,并根据所述操作信息来编制控制程序。
[0063]参见图2,该图为本实施例提供的一种自动测试方法的实施例二的流程图。
[0064]本实施例提供的自动测试方法包括:
[0065]S201:根据测试人员的测试操作步骤编制测试脚本。
[0066]本实施例根据测试人员的测试操作步骤编制测试脚本,所述测试脚本为描述性的测试脚本。举例而言,所述测试人员的测试步骤如下:
[0067]步骤A:输入患者姓名和身份证号码;
[0068]步骤B:点击“患者查询”按钮。
[0069]所述测试脚本即为通过语言对步骤A和步骤B进行的描述,所述语言可以为文字语言,也可以为机器语言,例如C语言、Java等,本发明不进行限定。
[0070]S202:根据所述描述性测试脚本从数据库中查询相应的信息。
[0071]以上述例子为例,需要从数据库中查询的信息如下:患者姓名、身份证号码、“患者姓名”输入框坐标、“身份证号码”输入框坐标以及“患者查询”按钮坐标。可以理解的是,上述具体信息并不构成对本发明技术方案的限定,本领域技术人员可以根据实际情况自行定义所述信息的具体内容以及类型,但是所述信息至少应当包括坐标信息。
[0072]S203:根据所述信息和所述描述性测试脚本编制控制程序。
[0073]由于所述信息中包含坐标信息,所述描述性测试脚本可以提供动作信息,因此,本实施例通过结合所述信息和所述描述性测试脚本编制控制程序。
[0074]仍以上述例子为例,所述控制程序的逻辑如下:
[0075]控制光标移动至“患者姓名”输入框对应的坐标,并进行点击;
[0076]控制键盘输入对应的患者姓名;
[0077]控制光标移动至“身份证号码”输入框对应的坐标,并进行点击;
[0078]控制键盘输入对应的身份证号码;
[0079]控制光标移动至“患者查询”按钮,并进行点击。
[0080]S204:根据所述控制程序驱动相应设备进行操作,以完成对测试对象的测试。
[0081]在本实施例中,所述根据所述控制程序驱动相应设备进行操作具体为:根据所述控制程序驱动所述预设设备相应的虚拟设备进行操作;或,根据所述控制程序驱动机械设备对所述预设设备进行操作。
[0082]本实施例通过根据测试人员的测试操作步骤编制描述性测试脚本,根据所述描述性测试脚本从数据库中查询相应的信息,根据所述信息和所述描述性测试脚本编制控制程序,根据所述控制程序驱动相应设备进行操作,以完成对测试对象的测试,相比较于现有技术,本实施例更加贴合人工测试的场景,因此对测试软件的测试结果更加准确。此外,由于所述自动测试方法不需要在被测对象所在的计算机上运行,所以不会占用系统资源,提高了被测对象的运行效率。
[0083]基于方法实施例一提供的一种自动测试方法,本发明实施例还提供了一种自动测试装置,下面结合附图来详细说明其工作原理。
[0084]装置实施例一:
[0085]参见图3,该图为本发明提供的一种自动测试装置实施例一结构框图。
[0086]本实施例提供的自动测试装置包括:
[0087]获取单元301、识别单元302、编制单元303和操作单元304 ;
[0088]其中,所述获取单元301与所述识别单元302连接,所述识别单元302与所述编制单元303连接,所述编制单元303与所述操作单元304连接;
[0089]所述获取单元301,用于通过视频采集器获取测试人员操作预设设备的操作信息;
[0090]所述识别单元302,用于对所述操作信息进行识别;
[0091]所述编制单元303,用于根据识别出的操作信息编制控制程序;
[0092]所述操作单元304,用于根据所述控制程序驱动相应设备进行操作,以模拟测试人员的操作实现对测试对象的测试。
[0093]本实施例通过识别视频采集器采集的测试人员的测试被测对象时的操作,并编制控制程序以驱动虚拟设备或机械设备来模拟测试人员进行测试操作,相比较于现有技术,本实施例更加贴合人工测试的场景,因此对测试软件的测试结果更加准确。此外,由于所述自动测试方法不需要在被测对象所在的计算机上运行,所以不会占用系统资源,提高了被测对象的运行效率。
[0094]基于方法实施例二提供的一种自动测试方法,本发明实施例还提供了一种自动测试装置,下面结合附图来详细说明其工作原理。
[0095]装置实施例二:
[0096]参见图4,该图为本发明提供的一种自动测试装置实施例二结构框图。
[0097]本实施例提供的自动测试装置包括:
[0098]脚本编制单元401、查询单元402、控制程序编制单元403和操作单元304 ;
[0099]其中,所述脚本编制单元401与所述查询单元402连接,所述查询单元402与所述控制程序编制单元403连接,所述控制程序编制单元403与所述操作单元304连接;
[0100]所述脚本编制单元401,用于根据测试人员的测试操作步骤编制测试脚本;
[0101]所述查询单元402,用于根据所述描述性测试脚本从数据库中查询相应的信息,所述信息包括坐标信息;
[0102]所述控制程序编制单元403,用于根据所述信息和所述描述性测试脚本编制控制程序;
[0103]所述操作单元304,用于根据所述控制程序驱动相应设备进行操作,以模拟测试人员的操作实现对测试对象的测试。
[0104]本实施例通过根据测试人员的测试操作步骤编制描述性测试脚本,根据所述描述性测试脚本从数据库中查询相应的信息,根据所述信息和所述描述性测试脚本编制控制程序,根据所述控制程序驱动相应设备进行操作,以完成对测试对象的测试,相比较于现有技术,本实施例更加贴合人工测试的场景,因此对测试软件的测试结果更加准确。此外,由于所述自动测试方法不需要在被测对象所在的计算机上运行,所以不会占用系统资源,提高了被测对象的运行效率。
[0105]本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元及模块可以是或者也可以不是物理上分开的。另外,还可以根据实际的需要选择其中的部分或者全部单元和模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0106]以上所述仅是本发明的【具体实施方式】,应当指出,对于本【技术领域】的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
【权利要求】
1.一种自动测试方法,其特征在于,所述方法包括: 通过视频采集器获取测试人员操作预设设备的操作信息; 对所述操作信息进行识别; 根据识别出的操作信息编制控制程序; 根据所述控制程序驱动相应设备进行操作,以模拟测试人员的操作实现对测试对象的测试。
2.根据权利要求1所述的方法,其特征在于,当所述预设设备为鼠标时,所述操作信息包括:所述鼠标的点击动作和移动轨迹; 当所述预设设备为键盘时,所述操作信息包括:按下动作和对应的按键; 当所述预设设备为显示屏时,所述操作信息包括:点击动作和对应的坐标。
3.根据权利要求1所述的方法,其特征在于,所述根据所述控制程序驱动相应设备进行操作具体为: 根据所述控制程序驱动所述预设设备相应的虚拟设备进行操作; 或, 根据所述控制程序驱动机械设备对所述预设设备进行操作。
4.一种自动测试装置,其特征在于,所述装置包括:获取单元、识别单元、编制单元和操作单元; 其中,所述获取单元与所述识别单元连接,所述识别单元与所述编制单元连接,所述编制单元与所述操作单元连接; 所述获取单元,用于通过视频采集器获取测试人员操作预设设备的操作信息; 所述识别单元,用于对所述操作信息进行识别; 所述编制单元,用于根据识别出的操作信息编制控制程序; 所述操作单元,用于根据所述控制程序驱动相应设备进行操作,以模拟测试人员的操作实现对测试对象的测试。
5.一种自动测试方法,其特征在于,所述方法包括: 根据测试人员的测试操作步骤编制描述性测试脚本; 根据所述描述性测试脚本从数据库中查询相应的信息,所述信息包括坐标信息; 根据所述信息和所述描述性测试脚本编制控制程序; 根据所述控制程序驱动相应设备进行操作,以模拟测试人员的操作实现对测试对象的测试。
6.根据权利要求5所述的自动测试方法,其特征在于,所述根据所述控制程序驱动相应设备进行操作具体为: 根据所述控制程序驱动所述预设设备相应的虚拟设备进行操作; 或, 根据所述控制程序驱动机械设备对所述预设设备进行操作。
7.一种自动测试装置,其特征在于,所述装置包括:脚本编制单元、查询单元、控制程序编制单元和操作单元; 其中,所述脚本编制单元与所述查询单元连接,所述查询单元与所述控制程序编制单元连接,所述控制程序编制单元与所述操作单元连接; 所述脚本编制单元,用于根据测试人员的测试操作步骤编制测试脚本; 所述查询单元,用于根据所述描述性测试脚本从数据库中查询相应的信息,所述信息包括坐标信息; 所述控制程序编制单元,用于根据所述信息和所述描述性测试脚本编制控制程序;所述操作单元,用于根据所述控制程序驱动相应设备进行操作,以模拟测试人员的操作实现对测试对象的测试。
【文档编号】G06F11/36GK104375936SQ201410659801
【公开日】2015年2月25日 申请日期:2014年11月18日 优先权日:2014年11月18日
【发明者】李双学, 张立国, 孙福志 申请人:沈阳东软医疗系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1