基于数字图像的智能测试机器人及其使用方法

文档序号:6541266阅读:226来源:国知局
基于数字图像的智能测试机器人及其使用方法
【专利摘要】本发明涉及基于数字图像设备测试领域,具体涉及一种基于数字图像的智能测试机器人,包括用例录入模块、运动控制模块以及图像识别模块;所述用例录入模块用于测试用例的录入,所述测试用例包括在被测设备上进行的操作动作以及所述操作动作在被测设备上产生的预期显示屏状态;所述运动控制模块按照所述用例录入模块记录的操作动作来操作被测设备;所述图像识别模块将被测设备经过操作后产生的显示屏状态与所述用例录入模块记录的预期显示屏状态进行比对来判断用例执行是否成功。本发明用机器代替人工操作,自动化程度大大提高,并且相比较人工测试,本发明的机器操作更精确并且更适用于多次重复的压力测试与大批量测试。
【专利说明】基于数字图像的智能测试机器人及其使用方法
【技术领域】
[0001]本发明涉及基于数字图像设备测试领域,具体涉及一种基于数字图像的智能测试机器人。
【背景技术】
[0002]随着电子技术的飞速发展,手机、平板电脑、导航仪、ATM取款机等智能设备的使用越来越频繁,其研发、生产和上市周期也进一步缩短。产品的研发、生产过程中的各测试环节是产品质量的有效保障,一般传统的测试方法有如下两种:
第一种,人工按照测试用例描述步骤进行测试。这种方式存在的问题有:一是测试水平受制于测试工人的业务技能、敬业度以及工作状态;二是长时间人工操作工人易产生疲劳,优秀的测试工人在疲劳状态也会对测试结果进行误判;三是这种测试方法较为缓慢,一般不适用于多次重复的压力测试与大批量测试;
第二种,在被测设备内部运行自动测试软件。这种测试方法存在的问题有:一是可测试部分仅限于纯软件部分,而对于按键、屏幕等重要的人机交互接口不能被有效测试;二是测试过程与用户使用的场景存在较多差异。
[0003]所以,如何对这些产品进行全面、快速和高效的测试,是该领域亟待解决的问题。
【发明内容】

[0004]针对现有技术存在的问题,提供一种能够进行全面、快速和高效测试的基于数字图像的智能测试机器人。
[0005]本发明采用的技术方案为:
一种基于数字图像的智能测试机器人,包括用例录入模块、运动控制模块以及图像识别模块;所述用例录入模块用于测试用例的录入,所述测试用例包括在被测设备上进行的操作动作以及所述操作动作在被测设备上产生的预期显示屏状态;所述运动控制模块按照所述用例录入模块记录的操作动作来操作被测设备;所述图像识别模块将被测设备经过操作后产生的显示屏状态与所述用例录入模块记录的预期显示屏状态进行比对来判断用例执行是否成功。所述操作包括在被测设备的屏幕上点击、长按或拖动等操作。
[0006]作为本发明的优选实施方式,还包括动作执行装置以及捕获被测设备图像信息的图像采集装置,所述运动控制模块通过所述动作执行装置来操作被测设备;所述图像识别模块通过所述图像采集装置来获取被测设备的显示屏状态。所述动作执行装置包括但不限于机械臂等装置,所述图像采集装置包括但不限于摄像头等装置。
[0007]作为本发明的优选实施方式,所述图像识别模块还包括设备个体识别单元,所述设备个体识别单元用于在所述图像采集装置所捕获的图像中读取被测设备的个体识别标识,并将检测结果与被测设备进行关联。手机、平板电脑、导航仪、ATM取款机等智能设备一般都有个体编号,例如每台手机都有唯一的頂EI号,只要将摄像头等图像采集装置对准这个编号进行拍照,然后通过文字识别软件就可以识别这个设备的编号,然后将检测结果与编号进行关联,使检测结果与每台设备一一对应。
[0008]作为本发明的优选实施方式,所述图像识别模块还包括目标查找单元,所述目标查找单元用于在所述图像采集装置所捕获的图像中查找给定目标并计算其坐标值。用例录入方式包括直接录入方式一、直接录入方式二和间接录入方式,目标查找单元用于在间接录入方式中查找指定目标。
[0009]本发明还公开了一种上述基于数字图像的智能测试机器人的第一种使用方法,该方法包括用例录入步骤,所述用例录入步骤包括,首先,在用例录入样机上预置动作与显示屏状态捕获客户端程序;然后,人工按照测试用例描述步骤操作所述用例录入样机,所述动作与显示屏状态捕获客户端程序将人工操作动作、操作位置以及操作所产生的预期显示屏状态发送给所述用例录入模块进行记录。所述操作位置是以坐标的形式被所述用例录入模块记录下来的。
[0010]作为本使用方法的优选实施方式,所述用例录入模块还需记录操作动作执行后延时多长时间再获取设备显示屏状态、用例执行失败后是否重复执行及最大重复执行次数这
三个信息。
[0011]作为本使用方法的优选实施方式,还包括用例执行步骤,所述用例执行步骤包括,第一步,所述的基于数字图像的智能测试机器人根据用例录入模块所记录的操作动作和操作位置来到指定位置对被测设备进行操作;第二步,延时测试用例指定时间后,捕获被测设备显示屏状态;第三步,将捕获的显示屏状态与用例录入模块记录的预期显示屏状态进行对比;第四步,判断用例是否需要重复执行,如果需重复执行则跳转到第一步继续执行同一条用例,否则执行下一步;第五步,判断用例是否已完,如果未完则跳转到第一步继续执行下一条用例,否则执行下一步;第六步,流程结束。
[0012]本发明还公开了一种上述基于数字图像的智能测试机器人的第二种使用方法,包括用例录入步骤,所述用例录入步骤包括,首先,在用例录入样机上预置动作执行及显示屏状态捕获客户端程序;然后,人工按照测试用例描述步骤操作所述用例录入模块,所述用例录入模块记录操作动作,并将相应操作动作发送给用例录入样机的动作执行及显示屏状态捕获客户端程序;动作执行及显示屏状态捕获客户端程序执行相应操作动作并将动作执行后的显示屏状态发送给用例录入模块;所述用例录入模块将动作执行及显示屏状态捕获客户端程序发送的显示屏状态设置为动作执行后的预期显示屏状态并与操作动作一起进行记录。
[0013]作为本使用方法的优选实施方式,所述用例录入模块还需记录操作动作执行后延时多长时间再获取设备显示屏状态、用例执行失败后是否重复执行及最大重复执行次数这
三个信息。
[0014]作为本使用方法的优选实施方式,还包括用例执行步骤,所述用例执行步骤包括,第一步,所述的基于数字图像的智能测试机器人根据用例录入模块所记录的操作动作和操作位置来到指定位置对被测设备进行操作;第二步,延时测试用例指定时间后,捕获被测设备显示屏状态;第三步,将捕获的显示屏状态与用例录入模块记录的预期显示屏状态进行对比;第四步,判断用例是否需要重复执行,如果需重复执行则跳转到第一步继续执行同一条用例,否则执行下一步;第五步,判断用例是否已完,如果未完则跳转到第一步继续执行下一条用例,否则执行下一步;第六步,流程结束。[0015]一种上述基于数字图像的智能测试机器人的使用方法,在所述用例录入模块中设置需要被操作目标的图像信息、针对该目标的操作动作以及操作该目标后的显示屏状态,在用例执行时由图像识别模块中的目标查找单元在捕获的图像中查找出该目标的位置,然后所述基于数字图像的智能测试机器人到该目标位置执行用例指定的操作。
[0016]综上所述,由于采用了上述技术方案,本发明的有益效果是:
1、用机器代替人工操作,自动化程度大大提高,并且相比较人工测试,本发明的机器操作更精确并且更适用于多次重复的压力测试与大批量测试。
[0017]2、相比较现有技术中在被测设备内部运行自动测试软件仅限于纯软件部分的测试方式,本发明能够测试如按键、屏幕等重要的人机交互接口,测试内容更加全面。
[0018]3、本发明公开了三种用例输入方式,用例录入方式灵活多样,操作简便,远优于直接输入被操作点坐标的输入方式。
[0019]4、本发明的机器人可以直接识别被测设备的个体信息,并让测试结果与其关联。这在对同一产品进行批量化测试时非常有用,完全不用测试人员手动输入产品信息,自动化程度大大提高。
【专利附图】

【附图说明】
[0020]图1是本发明智能测试机器人的用例录入优选实施例流程图。
[0021]图2是本发明智能测试机器人的用例执行优选实施例流程图。
【具体实施方式】
[0022]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明做进一步说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0023]实施例1
本发明的基于数字图像的智能测试机器人,包括用例录入模块、运动控制模块以及图像识别模块;所述用例录入模块用于测试用例的录入,所述测试用例包括在被测设备上进行的操作动作以及所述操作动作在被测设备上产生的预期显示屏状态(显示屏包括指示灯等能用视觉进行识别的装置,下同);所述运动控制模块按照所述用例录入模块记录的操作动作来操作被测设备;所述图像识别模块将被测设备经过操作后产生的显示屏状态与所述用例录入模块记录的预期显示屏状态进行比对来判断用例执行是否成功,之后系统根据用例录入模块的预设动作继续进行后续操作。所述操作动作包括在被测设备的显示屏上点击、长按或拖动等动作。
[0024]本发明的机器人还包括动作执行装置以及捕获被测设备图像信息的图像采集装置,所述运动控制模块通过所述动作执行装置来操作被测设备;所述图像识别模块通过所述图像采集装置来获取被测设备的显示屏状态。所述动作执行装置包括但不限于机械臂等装置,所述图像采集装置包括但不限于摄像头等装置。
[0025]所述图像识别模块还包括设备个体识别单元,所述设备个体识别单元用于在所述图像采集装置所捕获的图像中读取被测设备的个体识别标识,并将检测结果与被测设备进行关联。手机、平板电脑、导航仪、ATM取款机等智能设备一般都有个体编号,例如每台手机都有唯一的MEI号,只要将摄像头等图像采集装置对准这个编号进行拍照,然后通过文字识别软件就可以识别这个设备的编号,然后将检测结果与编号进行关联,使检测结果与每台设备--对应。
[0026]所述用例录入模块支持下面3种用例录入方式:
直接录入方式一:在用例录入样机(被测试设备)上预置动作与显示屏状态捕获客户端程序,人工按照用例描述步骤操作录入样机,动作与显示屏捕获客户端程序将所有人工操作动作、坐标(即操作位置)和显示屏状态(图像)发送给用例录入模块进行记录。该种方法最为简单,需要用例录入样机中预置动作与显示屏状态捕获客户端程序,但正式的被测设备不需要预置该程序。
[0027]直接录入方式二:
在用例录入样机(被测试设备)上预置动作执行及显示屏状态捕获客户端程序。用例录入人员按照用例描述步骤操作用例录入模块,用例录入模块记录其操作动作,并将相应操作动作发送给用例录入样机的动作执行及显示屏状态捕获客户端程序;客户端程序执行相应动作并将动作执行后的显示屏状态发送给用例录入模块;用例录入模块将客户端发送的显示屏状态设置为动作执行后的期望状态并与操作动作一起进行记录。该方法也只需要用例录入样机中预置动作执行及显示屏状态捕获客户端程序,但正式的被测设备不需要预置该程序。
[0028]间接录入方式:
设置需要被操作目标(图标)的图像信息、操作动作和操作该目标后的设备显示屏状态。用例执行时,摄像 头等图像采集装置捕获图像,由图像识别模块中的目标查找单元自动在捕获的图像中识别出该目标的坐标位置。所述图像识别模块包括目标查找单元,所述目标查找单元用于在所述图像采集装置所捕获的图像中查找给定目标并计算其坐标值。
[0029]图像识别模块主要实现如下功能:1、在捕获图像中查找给定目标(图标)并计算其坐标值;2、将用例实际执行后的显示屏状态与期望的显示屏状态进行对比,如果一致表示用例执行成功,否则执行失败。3、读取显示屏上显示的设备个体识别标识(如软件版本号、设备ID号等),自动让测试结果与个体进行关联。
[0030]下面具体讲述本发明的用例录入流程,如图1所示,是本发明基于数字图像的智能测试机器人的用例录入优选实施例的流程图,用于描述测试用例的输入。本实施例中,操作人员启动测试用例的录入,用直接录入方式一或者直接录入方式二或者间接录入方式录入用例;用例录入模块记录被操作部分坐标(针对直接录入方式一和直接录入方式二)或者图像特征(针对间接录入方式)、操作动作、操作后设备显示屏状态以及其他操作信息(如动作执行后延时多长时间再获取设备屏幕状态、用例执行失败后是否重复执行及最大重复执行次数等信息);如果需要在上一条用例的基础上继续录入用例则重复上述动作,否则结束录入。需要特别说明的是不同的录入方式可以在同一个用例集(由多个单条用例按特定顺序组成)中混合使用,如上一条用例采用直接录入方式一录入,下一条用例可以采用直接录入方式一或者直接录入方式二或者间接录入方式中的任意一种。
[0031]结合附图1本实施例包括以下步骤:
步骤SlOO:操作人员将动作与显示屏状态捕获客户端程序安装到用例录入样机,启动测试用例的录入; 步骤SlOl:使用直接录入方式一或者直接录入方式二或者间接录入方式录入用例;步骤S102:如果SlOl使用直接录入方式一或者直接录入方式二则记录被操作部分坐标值;如果SlOl使用间接录入用例方式则记录被操作部分图像特征;
步骤S103:记录操作动作;
步骤S104:记录操作后的设备显示屏状态;
步骤S105:记录动作执行后延时多长时间再获取设备屏幕状态、用例执行失败后是否重复执行及最大重复执行次数等信息;
步骤S106:如果需要继续录入用例则跳转到SlOl ;否则执行S107 ;
步骤S107:产生用例录入文件并结束录入操作。
[0032]实施例2
实施例2是在实施例1的基础上产生的用例执行步骤,如图2所示,是本发明基于数字图像的智能测试机器人的用例执行优选实施例的流程图,用于描述测试用例的执行过程。本实施例中,在开始测试之后测试机器人到用例指定位置执行用例指定的操作,捕获被测设备显示屏状态,与用例预期的显示屏状态进行对比,如果一致则表示用例执行成功,否则表示失败。最后判断用例是否执行结束,如果未结束则继续执行,否则结束执行。
[0033]结合附图2,本实施例包括以下步骤:
步骤SlOO:开始测试;
步骤SlOl:如果该用例采用的直接录入方式一或者直接录入方式二录入,则测试机器人直接到用例指定位置执行用例指定的操作;如果该用例采用的间接录入方式录入,则由图像识别模块从图像中找出目标坐标,测试机器人到该目标位置执行用例指定的操作。
[0034]步骤S102:延时用例指定时间后,捕获被测设备显不屏状态;
步骤S103:与用例预期的显示屏状态进行对比;
步骤S104:判断用例是否需要重复执行(有可能用例执行失败需重复执行本条用例,或者本条用例本就需重复执行多次)。如果需重复执行则跳转到SlOl继续执行同一条用例,否则执行S105。
[0035]步骤S105:判断用例是否完。如果未完则跳转到SlOl继续执行下一条用例,否则执行S106。
[0036]步骤S106:流程结束。
[0037]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.在一种基于数字图像的智能测试机器人,其特征在于,包括用例录入模块、运动控制模块以及图像识别模块; 所述用例录入模块用于测试用例的录入,所述测试用例包括在被测设备上进行的操作动作以及所述操作动作在被测设备上产生的预期显示屏状态;所述运动控制模块按照所述用例录入模块记录的操作动作来操作被测设备;所述图像识别模块将被测设备经过操作后产生的显示屏状态与所述用例录入模块记录的预期显示屏状态进行比对来判断用例执行是否成功。
2.根据权利要求1所述的基于数字图像的智能测试机器人,其特征在于,还包括动作执行装置以及捕获被测设备图像信息的图像采集装置,所述运动控制模块通过所述动作执行装置来操作被测设备;所述图像识别模块通过所述图像采集装置来获取被测设备的显示屏状态。
3.根据权利要求1或2所述的基于数字图像的智能测试机器人,其特征在于,所述图像识别模块还包括设备个体识别单元,所述设备个体识别单元用于在所述图像采集装置所捕获的图像中读取被测设备的个体识别标识,并将检测结果与被测设备进行关联。
4.根据权利要求1或2所述的基于数字图像的智能测试机器人,其特征在于,所述图像识别模块还包括目标查找单元,所述目标查找单元用于在所述图像采集装置所捕获的图像中查找给定目标并计算其坐标值。
5.一种如权利要求1至4中任意一项所述的基于数字图像的智能测试机器人的使用方法,其特征在于,包括用例录入步骤,所述用例录入步骤包括,首先,在用例录入样机上预置动作与显示屏状态捕获客户端程序;然后,人工按照测试用例描述步骤操作所述用例录入样机,所述动作与显示屏状态捕获客户端程序将人工操作动作、操作位置以及操作所产生的显示屏状态发送给所述用例录入模块进行记录。
6.根据权利要求5所述的基于数字图像的智能测试机器人的使用方法,其特征在于,所述用例录入模块还需记录操作动作执行后延时多长时间再获取设备显示屏状态、用例执行失败后是否重复执行及最大重复执行次数这三个信息。
7.根据权利要求4或5所述的基于数字图像的智能测试机器人的使用方法,其特征在于,还包括用例执行步骤,所述用例执行步骤包括,第一步,所述基于数字图像的智能测试机器人根据用例录入模块所记录的操作动作和操作位置来到指定位置对被测设备进行操作;第二步,延时测试用例指定时间后,捕获被测设备显示屏状态;第三步,将捕获的显示屏状态与用例录入模块记录的预期显示屏状态进行对比;第四步,判断用例是否需要重复执行,如果需重复执行则跳转到第一步继续执行同一条用例,否则执行下一步;第五步,判断用例是否已完,如果未完则跳转到第一步继续执行下一条用例,否则执行下一步;第六步,流程结束。
8.—种如权利要求1至4中任意一项所述的基于数字图像的智能测试机器人的使用方法,其特征在于,包括用例录入步骤,所述用例录入步骤包括,首先,在用例录入样机上预置动作执行及显示屏状态捕获客户端程序;然后,人工按照测试用例描述步骤操作所述用例录入模块,所述用例录入模块记录操作动作,并将相应操作动作发送给用例录入样机的动作执行及显示屏状态捕获客户端程序;动作执行及显示屏状态捕获客户端程序执行相应操作动作并将动作执行后的显示屏状态发送给用例录入模块;所述用例录入模块将动作执行及显示屏状态捕获客户端程序发送的显示屏状态设置为动作执行后的预期显示屏状态并与操作动作一起进行记录。
9.根据权利要求8所述的基于数字图像的智能测试机器人的使用方法,其特征在于,还包括用例执行步骤,所述用例执行步骤包括,第一步,所述的基于数字图像的智能测试机器人根据用例录入模块所记录的操作动作和操作位置来到指定位置对被测设备进行操作;第二步,延时测试用例指定时间后,捕获被测设备显示屏状态;第三步,将捕获的显示屏状态与用例录入模块记录的预期显示屏状态进行对比;第四步,判断用例是否需要重复执行,如果需重复执行则跳转到第一步继续执行同一条用例,否则执行下一步;第五步,判断用例是否已完,如果未完则跳转到第一步继续执行下一条用例,否则执行下一步;第六步,流程结束。
10.一种权利要求4所述的基于数字图像的智能测试机器人的使用方法,其特征在于,在所述用例录入模块中设置需要被操作目标的图像信息、针对该目标的操作动作以及操作该目标后的显示屏状态,在用例执行时由图像识别模块中的目标查找单元在捕获的图像中查找出该目标的位置,然后 所述基于数字图像的智能测试机器人到该目标位置执行用例指定的操作。
【文档编号】G06F11/36GK103838674SQ201410106779
【公开日】2014年6月4日 申请日期:2014年3月21日 优先权日:2014年3月21日
【发明者】徐禄勇 申请人:徐禄勇
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1