用户界面自动化测试方法和装置制造方法及图纸

技术编号:12388992 阅读:100 留言:0更新日期:2015-11-25 22:19
本发明专利技术实施例提供了一种用户界面自动化测试方法和装置,其中的方法具体包括:对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用例;利用多线程执行所述目标测试用例。本发明专利技术实施例能够大大提高UI自动化测试的效率。

【技术实现步骤摘要】

本专利技术涉及测试
,特别是涉及一种用户界面自动化测试方法和一种用户界面自动化测试装置。
技术介绍
随着自动化测试技术的普及,对设备的UI(用户界面,UserInterface)进行测试逐渐由手工测试转为UI自动化测试。UI自动化测试,即由机器模拟用户针对UI的操作,从而进行自动化测试,主要包含网页(Web)UI自动化测试和本地应用程序UI自动化测试。现有的UI自动化测试方法通常在浏览器上执行相应UI的测试用例。然而,在浏览器上执行UI的测试用例的过程中,需要渲染UI的页面元素以显示对应的页面内容;在测试用例较多时,上述渲染UI的页面元素的过程需要花费大量的时间,这增加了UI自动化测试的时间,从而影响了UI自动化测试的效率。例如,在浏览器上进行地图网站的UI自动化测试的过程中,需要执行1078个测试用例,这些测试用例花费的时间为7000s,这严重影响了UI自动化测试的效率。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的用户界面自动化测试方法和相应的用户界面自动化测试装置。依据本专利技术的一个方面,提供了一种用户界面自动化测试方法,包括:对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用例;利用多线程执行所述目标测试用例。可选地,所述对测试任务中测试用例进行格式转换的步骤,包括:利用JAVA反射技术对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用例。可选地,所述利用JAVA反射技术对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用例的步骤,包括:利用JAVA反射技术获取测试任务中测试用例对应测试类的对象方法;将所述对象方法转换为预置的统一格式,得到具有预置的统一格式的目标测试用例。可选地,所述利用多线程执行所述目标测试用例的步骤,包括:各线程利用代码解析器执行所述目标测试用例。可选地,在所述利用多线程执行所述目标测试用例的步骤之前,所述方法还包括:将所述目标测试用例写入缓冲区;所述利用多线程执行所述目标测试用例的步骤,包括:各线程在处于空闲状态时,扫描所述缓冲区;在扫描到新的目标测试用例时,从所述缓冲区中读取并执行所述目标测试用例。可选地,在所述对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用例的步骤之前,所述方法还包括:执行节点接收调度节点分发的测试任务;其中,所述测试任务为所述调度节点对原有测试任务进行切片得到的任务;所述对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用例的步骤具体为,所述执行节点对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用例。根据本专利技术的另一方面,提供了一种用户界面自动化测试装置,包括:格式转换模块,用于对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用例;及多线程执行模块,用于利用多线程执行所述目标测试用例。可选地,所述格式转换模块,包括:反射转换子模块,用于利用JAVA反射技术对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用例。可选地,所述反射转换子模块,包括:反射获取单元,用于利用JAVA反射技术获取测试任务中测试用例对应测试类的对象方法;及转换单元,用于将所述对象方法转换为预置的统一格式,得到具有预置的统一格式的目标测试用例。可选地,所述多线程执行模块,包括:解析执行子模块,用于通过各线程利用代码解析器执行所述目标测试用例。可选地,所述装置还包括:写入模块,用于在所述多线程执行模块利用多线程执行所述目标测试用例之前,将所述目标测试用例写入缓冲区;所述多线程执行模块,包括:扫描子模块,用于针对各线程在处于空闲状态时,扫描所述缓冲区;读取执行子模块,用于在扫描到新的目标测试用例时,从所述缓冲区中读取并执行所述目标测试用例。可选地,所述格式转换模块和所述多线程执行模块位于所述执行节点,所述装置还包括:接收模块,位于执行节点,用于在所述格式转换模块对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用例之前,接收调度节点分发的测试任务;其中,所述测试任务为所述调度节点对原有测试任务进行切片得到的任务。根据本专利技术的用户界面自动化测试方法和装置,可以利用多线程并行执行UI的目标测试用例,相对于现有方案在浏览器上执行相应UI的测试用例,本专利技术实施例能够大大提高UI自动化测试的效率。另外,本专利技术实施例对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用例,能够使得多线程利用与预置的统一格式相应的用例执行方案执行所述目标测试用例,这相对于传统方案根据不同测试用例编写众多用例执行方案,本专利技术实施例能够实现测试用例与用例执行方案的工程代码的松散耦合,因此能够进一步提高测试用例的执行效率。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了根据本专利技术一个实施例的一种用户界面自动化测试方法实施例的步骤流程图;图2示出了根据本专利技术一个实施例的一种用户界面自动化测试方法实施例的步骤流程图;图3示出了根据本专利技术一个实施例的一种缓冲区的结构示意图;图4示出了根据本专利技术一个实施例的一种用户界面自动化测试方法实施例的步骤流程图;图5示出了根据本专利技术一个实施例的一种用户界面自动化测试方法实施例的步骤流程图;图6示出了根据本专利技术一个实施例的一种界面自动化测试装置实施例的结构框图;图7示出了根据本专利技术一个实施例的一种界面自动化测试装置实施例的结构框图;以及图8示出了根据本专利技术一个实施例的一种界面自动化测试装置实施例的结构框图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本本文档来自技高网...
用户界面自动化测试方法和装置

【技术保护点】
一种用户界面自动化测试方法,包括:对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用例;利用多线程执行所述目标测试用例。

【技术特征摘要】
1.一种用户界面自动化测试方法,包括:
对测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标
测试用例;
利用多线程执行所述目标测试用例。
2.如权利要求1所述的方法,其特征在于,所述对测试任务中测试用
例进行格式转换的步骤,包括:
利用JAVA反射技术对测试任务中测试用例进行格式转换,得到具有预
置的统一格式的目标测试用例。
3.如权利要求2所述的方法,其特征在于,所述利用JAVA反射技术对
测试任务中测试用例进行格式转换,得到具有预置的统一格式的目标测试用
例的步骤,包括:
利用JAVA反射技术获取测试任务中测试用例对应测试类的对象方法;
将所述对象方法转换为预置的统一格式,得到具有预置的统一格式的目
标测试用例。
4.如权利要求1所述的方法,其特征在于,所述利用多线程执行所述
目标测试用例的步骤,包括:各线程利用代码解析器执行所述目标测试用例。
5.如权利要求1所述的方法,其特征在于,在所述利用多线程执行所
述目标测试用例的步骤之前,所述方法还包括:将所述目标测试用例写入缓
冲区;
所述利用多线程执行所述目标测试用例的步骤,包括:
各线程在处于空闲状态时,扫描所述缓冲区;
在扫描到新的目标测试用例时,从所述缓冲区中读取并执行所述目标测
试用例。
6.如权利要求1所述的方法,其特征在于,在所述对测试任务中测试

【专利技术属性】
技术研发人员:崔岳阳丛凤翔
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1