一种UI自动化测试方法技术

技术编号:28622704 阅读:12 留言:0更新日期:2021-05-28 16:18
本发明专利技术公开的UI自动化测试方法,涉及软件测试技术领域,在Node.js环境下,录制引擎录制人工驱动的测试流程,根据测试流程,生成JSON格式的测试用例,解析测试用例当前所在的运行环境,生成与运行环境匹配的参数数据,将参数数据写入执行引擎并利用执行引擎,执行测试用例,提高了测试用例的可维护性及测试效率,适用性较强。

【技术实现步骤摘要】
一种UI自动化测试方法
本专利技术涉及软件测试
,具体涉及一种UI自动化测试方法。
技术介绍
通常,软件测试是基于预先设计的测试用例,由测试人员根据测试用例中描述的流程对软件进行一步步测试的过程,得到实际结果与期望结果的比较。为了节省人力、时间或硬件资源,提高测试效率,当前采用UI自动化测试的方案。目前基于业界流行的UI自动化测试方案基于通用Web技术,如Selenium、QTP等,该方案存在以下缺陷:(1)录制脚本工具不稳定,基于Chrome插件实现,容错率较低,由于是将测试流程进行代码转换,故生成的脚本代码错误率较高,有些语法错误,需要手动修改后才能运行,脚本回放错误率较高,脚本回放场景单一,无法支撑多样性的场景;(2)基于流程生成代码的方式,使业务数据与脚本代码高度耦合,无法抽提参数,灵活性较差;(3)代码生成后变成固定脚本,前端页面如果发生微调,脚本就不能继续使用了,需要重新录制生成脚本代码,可维护性较差。
技术实现思路
为解决现有技术的不足,本专利技术实施例提供了一种UI自动化测试方法,该方法包括以下步骤:在Node.js环境下,录制引擎录制人工驱动的测试流程;根据所述测试流程,生成JSON格式的测试用例;解析所述测试用例当前所在的运行环境,生成与所述运行环境匹配的参数数据;将所述参数数据写入执行引擎并利用所述执行引擎,执行所述测试用例。优选地,解析所述测试用例当前所在的运行环境,生成与所述运行环境匹配的参数数据包括:根据所述测试用例的运行环境,生成所述测试引擎对应的执行时间、参数数据获取规则,生成相应的参数数据。优选地,在解析所述测试用例当前所在的运行环境,生成与所述运行环境匹配的参数数据之后,所述方法还包括:为所述参数数据设定标识;根据所述标识,将所述参数数据与所述运行环境关联。本专利技术实施例提供的UI自动化测试方法,具有以下有益效果:(1)采用JSON格式的测试用例,提高了测试用例的可维护性;(2)动态加载执行参数,动态更新用例步骤参数,达到数据驱动自动化测试,提高了测试效率,适用于多种运行环境。具体实施方式以下结合具体实施例对本专利技术作具体的介绍。本专利技术提供的实施例提供的UI自动化测试方法,包括以下步骤:S101,在Node.js环境下,录制引擎录制人工驱动的测试流程;S102,根据测试流程,生成JSON格式的测试用例;S103,解析测试用例当前所在的运行环境,生成与运行环境匹配的参数数据;S104,将参数数据写入执行引擎并利用执行引擎,执行测试用例。其中,在执行测试用例时,解析JSON脚本中配置的参数数据并将该参数数据加载至运行时的执行引擎中,达到动态更改参数数据的效果,实现参数化脚本功能,支持以参数数据驱动自动化测试。可选地,解析测试用例当前所在的运行环境,生成与运行环境匹配的参数数据包括:根据测试用例的运行环境,生成测试引擎对应的执行时间、参数数据获取规则,生成相应的参数数据。可选地,在解析测试用例当前所在的运行环境,生成与运行环境匹配的参数数据之后,该方法还包括:为参数数据设定标识;根据所述标识,将参数数据与运行环境关联。其中,基于前端模块化开发的参数数据,在页面渲染时,将参数数据加入到引用管理器中,后续开发测试用例时,只需要根据参数数据的标识,就能准确地获取参数数据。本专利技术实施例提供的UI自动化测试方法,在Node.js环境下,录制引擎录制人工驱动的测试流程,根据测试流程,生成JSON格式的测试用例,解析测试用例当前所在的运行环境,生成与运行环境匹配的参数数据,将参数数据写入执行引擎并利用执行引擎,执行测试用例,提高了测试用例的可维护性及测试效率,适用性较强。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。可以理解的是,上述方法及装置中的相关特征可以相互参考。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本专利技术也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本专利技术的内容,并且上面对特定语言所做的描述是为了披露本专利技术的最佳实施方式。此外,存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM),存储器包括至少一个存储芯片。本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。存储器是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实本文档来自技高网...

【技术保护点】
1.一种UI自动化测试方法,其特征在于,包括:/n在Node.js环境下,录制引擎录制人工驱动的测试流程;/n根据所述测试流程,生成JSON格式的测试用例;/n解析所述测试用例当前所在的运行环境,生成与所述运行环境匹配的参数数据;/n将所述参数数据写入执行引擎并利用所述执行引擎,执行所述测试用例。/n

【技术特征摘要】
1.一种UI自动化测试方法,其特征在于,包括:
在Node.js环境下,录制引擎录制人工驱动的测试流程;
根据所述测试流程,生成JSON格式的测试用例;
解析所述测试用例当前所在的运行环境,生成与所述运行环境匹配的参数数据;
将所述参数数据写入执行引擎并利用所述执行引擎,执行所述测试用例。


2.根据权利要求1所述的UI自动化测试方法,其特征在于,解析所述测试用例当前所在的运行环境,生成与所述运行环境匹配的参数数据包括:
根据所述测试用例的运行环境,生成所述...

【专利技术属性】
技术研发人员:贺传乔杨岩斌
申请(专利权)人:北京神州数字科技有限公司
类型:发明
国别省市:北京;11

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

1