一种基于Python的自动化测试框架系统及方法与流程

文档序号:37037813发布日期:2024-02-20 20:31阅读:13来源:国知局
一种基于Python的自动化测试框架系统及方法与流程

本发明实施例涉及测试验证,特别涉及一种基于python的自动化测试框架系统及方法。


背景技术:

1、随着互联网行业的高速发展,各类软件不断涌现,为我们日常生活提供便捷。市场对软件周期的要求也越来越高,软件改动后的测试包括大量重复、繁琐的步骤,占用了大量的时间以及人力资源,由此衍生出了自动化测试。自动化测试能够最大限度的节省资源达到事半功倍的效果。

2、发明人发现,当前大多数自动化测试系统都基于开源测试框架unittest或pytest开发,每次软件更新时都需要花费大量时间去修改测试用例,维护测试脚本,代码量大且繁琐,测试人员需对测试脚本执行逻辑有较深的了解,不易于新人对测试脚本进行修改。


技术实现思路

1、本发明实施方式的目的在于提供一种基于python的自动化测试框架系统和方法,其目的在于降低对实际测试人员编程技能的要求,提升自动化测试效率,满足实际使用的需要。

2、为解决上述技术问题,本发明的实施方式提供了一种基于python的自动化测试框架系统,基于python的自动化测试框架系统包括:通讯连接的数据层、控制层、执行层、分析层、报告层、维护层;其中,所述数据层用于生成测试数据并将测试数据发送到控制层;所述控制层用于根据所述数据层返回的测试数据,生成测试脚本;所述执行层用于调用并执行所述控制层生成的测试脚本,并将测试执行数据发送到分析层;所述分析层用于对测试执行数据进行分析,得到测试结果,并将测试结果发送到报告层;所述报告层用于根据测试结果生成测试报告;所述维护层用于对数据层、控制层、执行层、分析层、报告层进行故障定位及维护。

3、为解决上述技术问题,本申请实施例还提供了一种基于python的自动化测试方法,所述方法应用于所述基于python的自动化测试框架系统,包括:利用数据层生成测试对象的测试数据,及利用控制层根据所述测试数据生成测试脚本;利用执行层执行所述测试脚本,得到测试执行数据,并将所述测试执行数据发送到所述分析层;利用分析层对所述测试执行数据进行分析得到测试结果,及利用报告层将所述测试结果转换为测试报告;当数据层、控制层、执行层、分析层或报告层任一层发生故障时,利用维护层进行故障定位。

4、本申请实施例提供的基于python的自动化测试框架系统及方法,通过数据层生成测试数据,利用控制层根据所述测试数据生成测试脚本,利用执行层执行所述测试脚本实现对测试对象的测试,利用分析层对测试执行数据进行分析得到测试结果,利用报告层根据测试结果生成测试报告,利用维护层进行故障定位和维护,相较于常规的自动化测试框架主要是根据测试用例编写测试脚本,测试代码开发工作量大,本申请根据测试数据生成测试脚本,每次只需要根据实际测试需求变更测试数据,即可实现对测试脚本的修改和维护,实现对了对测试用例的隔离,提升了自动化测试效率,降低对实际测试人员编程技能的要求,满足实际使用的需要。

5、另外,所述数据层通过下述方法生成测试数据,包括:获取测试对象的软件数据,并从所述软件数据中提取测试参数、测试场景及测试动作;对所述测试参数、测试场景及测试动作进行数据格式化处理;将数据格式化处理后测试参数、测试场景及测试动作存储为测试文件,得到所述测试数据。

6、另外,所述控制层通过下述方法生成测试脚本:将测试数据编排为数据字典,根据所述数据字典生成测试脚本。

7、另外,所述执行层通过下述方法调用并执行所述控制层生成的测试脚本:利用执行脚本调用所述测试脚本对应的软件接口;将所述软件接口的返回值及日志存储到日志数据字典中,将所述日志数据字典作为所述测试执行数据。

8、另外,所述分析层通过下述方法生成测试结果:利用分析脚本对所述日志数据字典进行检测,并将检测后的日志数据字典进行格式化处理,得到测试结果。

9、另外,所述报告层通过下述方法生成测试报告:根据预设测试报告模板将所述测试结果转换为测试报告。

10、另外,所述维护层通过下述方法对数据层、控制层、执行层、分析层及报告层进行维护:对数据层、控制层、执行层、分析层及报告层中所有的类进行实例化;对控制层的测试脚本添加单元测试方法。

11、另外,所述系统还包括ui层,所述ui层分别与数据层、控制层、执行层、分析层、报告层及维护层通讯连接,所述ui层用于对数据层、控制层、执行层、分析层、报告层及维护层进行封装,生成测试操作界面。

12、另外,所述ui层通过下述方法对数据层、控制层、执行层、分析层、报告层及维护层进行封装:从测试操作需求中提取数据层、控制层、执行层、分析层、报告层及维护层对应的关键控制部件;利用qt技术对所述关键控制部件进行封装,得到测试操作界面。



技术特征:

1.一种基于python的自动化测试框架系统,其特征在于,所述系统包括:通讯连接的数据层、控制层、执行层、分析层、报告层、维护层;

2.根据权利要求1所述的基于python的自动化测试框架系统,其特征在于,所述数据层通过下述方法生成测试数据,包括:

3.根据权利要求1所述的基于python的自动化测试框架系统,其特征在于,所述控制层通过下述方法生成测试脚本:

4.根据权利要求1所述的基于python的自动化测试框架系统,其特征在于,所述执行层通过下述方法调用并执行所述控制层生成的测试脚本:

5.根据权利要求4所述的基于python的自动化测试框架系统,其特征在于,所述分析层通过下述方法生成测试结果:

6.根据权利要求1所述的基于python的自动化测试框架系统,其特征在于,所述报告层通过下述方法生成测试报告:

7.根据权利要求1所述的基于python的自动化测试框架系统,其特征在于,所述维护层通过下述方法对数据层、控制层、执行层、分析层及报告层进行维护:

8.根据权利要求1所述的基于python的自动化测试框架系统,其特征在于,所述系统还包括ui层,所述ui层分别与数据层、控制层、执行层、分析层、报告层及维护层通讯连接,所述ui层用于对数据层、控制层、执行层、分析层、报告层及维护层进行封装,生成测试操作界面。

9.根据权利要求1所述的基于python的自动化测试框架系统,其特征在于,所述ui层通过下述方法对数据层、控制层、执行层、分析层、报告层及维护层进行封装:

10.一种基于python的自动化测试方法,其特征在于,所述方法应用于如权利要求1-9中任一项所述的基于python的自动化测试框架系统,包括:


技术总结
本发明实施例涉及测试验证技术领域,公开了一种基于Python的自动化测试框架系统和方法,所述方法包括:通过数据层生成测试数据,利用控制层根据所述测试数据生成测试脚本,利用执行层执行所述测试脚本实现对测试对象的测试,利用分析层对测试执行数据进行分析,得到测试结果,利用报告层根据测试结果生成测试报告,利用维护层进行故障定位和维护,本申请根据测试数据生成测试脚本,每次只需要根据实际测试需求变更测试数据,即可实现对测试脚本的修改和维护,实现了对测试用例的隔离,提升了自动化测试效率,降低对实际测试人员编程技能的要求,满足实际使用的需要。

技术研发人员:请求不公布姓名,请求不公布姓名
受保护的技术使用者:上海科梁信息科技股份有限公司
技术研发日:
技术公布日:2024/2/19
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1