KDT制造技术

技术编号:39672981 阅读:8 留言:0更新日期:2023-12-11 18:38
本申请涉及一种

【技术实现步骤摘要】
KDT框架、测试用例回归测试方法、装置、设备和介质


[0001]本申请涉及自动化测试框架
,特别是涉及一种关键字驱动
(KDT)
框架

测试用例回归测试方法

装置

计算机设备和存储介质


技术介绍

[0002]自动化测试框架与常用的测试工具,如
jmeter

loadrunner

postman

robotframework
等测试工具不同,框架只是一个半成品的工具,必须经过二次封装才可以使用,测试工具可以直接拿来使用;基于项目层面,业务层面的框架,自己可以使用脚本进行封装,具有可扩展性强,使用灵活的特点,此外,还要独立于测试工具,测试步骤可以复用,测试数据也容易定制

[0003]自动化测试框架常见的设计思路如下:
(1).
数据驱动
(DDT)
,将测试数据跟测试脚本分离,将测试数据保存到外部数据源中,通过外部数据来驱动脚本执行,维护测试数据跟测试脚本不相关;
(2).
关键字驱动
(KDT)
,数据驱动的一个优化,也属于数据驱动的一种,数据驱动关注测试用例,关键字驱动关注测试动作,测试对象,测试数据;
(3).
页面对象模型
(POM)
,基于业务流程,将测试场景中涉及到的页面对象进行封装

[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]测试步骤内容管理模块,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种关键字驱动框架,其特征在于,所述关键字驱动框架包括用例层

关键字库

日志层

报告层和执行层;所述用例层用于使用电子表格文件存放测试用例数据,所述测试用例数据包括用例功能

用例标题

测试步骤

数据库名

关键字及参数;所述关键字库层用于获取测试用例中每一测试步骤对应的关键字,并对测试用例中每一测试步骤的关键字进行封装形成关键字库;所述日志层用于生成日志并记录在所述日志文件中;所述报告层用于记录自动化测试报告结果,并生成测试报告;所述执行层用于封装用例运行控制器,检索获取电子表格文件,读取测试用例,运行测试用例并输出测试报告
。2.
根据权利要求1所述的关键字驱动框架,其特征在于,所述关键字驱动框架还包括公共方法层

配置层和工具层;所述公共方法层用于存放日志文件,并封装打印日志方法;所述配置层用于存放配置文件,进行默认浏览器配置

邮件配置以及运行控制器的配置;所述工具层用于存放工具模块,所述工具模块包括读取测试用例数据文件和发送邮件文件,所述读取测试用例数据文件用于读取测试文件中的测试用例数据,所述发送邮件文件用于发送邮件
。3.
根据权利要求1所述的关键字驱动框架,其特征在于,所述关键字库层存放测试框架源代码文件,在所述测试框架源代码文件中设置浏览器驱动模块

显示等待模块和元素操作模块;所述浏览器驱动模块用于进行浏览器驱动,所述显示等待模块用于设置显示等待,所述元素操作模块用于元素上的鼠标操作
。4.
根据权利要求3所述的关键字驱动框架,其特征在于,所述关键字库层在对测试用例中每一测试步骤的关键字进行封装形成关键字库时,在所述测试框架源代码文件下封装的类名与预进行回归测试的测试用例模块名相同,每一类中封装的实例方法用于在执行测试用例时查找每一测试步骤对应的关键字
。5.
一种测试用例回归测试方法,其特征在于,包括:搭建权利要求1至4任一项所述的关键字驱动框架形成关键字驱动自动化脚本;选取已建好的测试单,选择进行回归测试的测试用例;将测试用例中的测试步骤内容填写在所述电子表格文件中;获取测试用例中每一测试步骤对应的关键字,并对测试用例中每一测试步...

【专利技术属性】
技术研发人员:朱晓亮刘怀熠叶松林
申请(专利权)人:赛力斯汽车有限公司
类型:发明
国别省市:

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

1