基于Python和Excel的接口自动化框架控制系统技术方案

技术编号:36574631 阅读:13 留言:0更新日期:2023-02-04 17:32
本发明专利技术公开了基于Python和Excel的接口自动化框架控制系统,涉及软件测试技术领域,包括框架构建模块、接口测试模块、终端监测模块以及终端评估模块;本发明专利技术通过与swagger接口文档相结合,通过请求swagger的接口地址,自动解析接口文档中所有接口写入Excel;根据Excel中的有效参数,通过边界值、特殊字符以及必填项等用计方法,自动生成测试用例并记录在Excel中;可以实现场景化接口测试,实现接口之间值的传递;提高了接口测试效率;所述终端监测模块用于对接口测试过程中测试终端的状态偏离值进行评估,以及时提醒管理人员对所述测试终端进行检修,并更换其他测试终端继续测试,提高接口测试效率。提高接口测试效率。提高接口测试效率。

【技术实现步骤摘要】
基于Python和Excel的接口自动化框架控制系统


[0001]本专利技术涉及软件测试
,具体是基于Python和Excel的接口自动化框架控制系统。

技术介绍

[0002]互联网高速发展的今天,无论公司需求还是客户需求都对软件产品的质量要求越来越高,在开发过程中提前对软件接口功能进行测试已成为测试过程中必不可少的一部分;目前主流的接口自动化框架都是基于Python+requests+unittest+HTMLTestRunner这几个库实现的;在Python环境下,借助requests+unittest模块,为每个http接口一个一个写脚本测试;使用testsuite构造测试集或利用TestLoader类中提供的discover方法构造测试集合;最后利用HTMLTestRunner运行测试集合并生成测试报告。整体流程就是在Excel填入接口的信息项,然后用Python读取Excel,Excel每填入一条就把他当作一条用例,然后利用unittest库把这些用例整合起来按照顺序去跑;最后生成测试报告;该框架存在以下不足:1、需要在Excel手动填写关于接口的所有信息,工作量繁琐且耗时间;2、写用例的时候需要人手动去设计用例,比如一条接口要传十个字段,每个字段要去做一次边界值的用例,这就造成工作重复且耗费时间;3、功能单一,比如想实现接口值之间的传递,接口的排序,这些功能都无法实现;报告字段缺少,无法直观显示我们想要的结果;没有跟项目的接口文档关联起来;基于以上不足,本专利技术提出基于Python和Excel的接口自动化框架控制系统。

技术实现思路

[0003]本专利技术旨在至少解决现有技术中存在的技术问题之一。为此,本专利技术提出基于Python和Excel的接口自动化框架控制系统,是基于Python与swagger接口文档相结合自动生成用例的接口自动化框架。所述框架包含四个py文件以及一个Yml配置文件;Yml配置文件主要是把公共信息项维护在一个配置文件里面,方便后续维护;py文件主要是生成Excel以及用例。每个文件都有对应的功能。本专利技术通过与swagger接口文档相结合,通过请求swagger的接口地址,自动解析接口文档中所有接口写入Excel;根据Excel中的有效参数,通过边界值、特殊字符以及必填项等用计方法,自动生成测试用例并记录在Excel中;可以实现场景化接口测试,实现接口之间值的传递。
[0004]为实现上述目的,根据本专利技术的第一方面的实施例提出基于Python和Excel的接口自动化框架控制系统,包括框架构建模块、接口测试模块、终端监测模块以及终端评估模块;所述框架构建模块用于基于Python与swagger接口文档相结合,构建自动生成用例的接口自动化框架;所述接口自动化框架包含四个py文件以及一个Yml配置文件;其中,Yml配置文件用于把公共信息项维护在一个配置文件里面;py文件用于生成Excel以及用
例;所述接口测试模块包括若干个测试终端,用于应用框架构建模块构建的接口自动化框架进行接口测试;所述终端监测模块用于对测试终端进行接口测试监测,并对接口测试过程中测试终端的状态偏离值进行评估;若状态偏离值PL大于预设偏离阈值,则生成偏离预警信号;以提醒管理人员对所述测试终端进行检修,并更换其他测试终端继续测试;所述终端监测模块还用于将测试终端的测试时长和状态偏离值PL进行统合形成测试记录并将测试记录打上时间戳存储至云平台;所述终端评估模块与云平台相连接,用于根据云平台内存储的带有时间戳的测试记录对测试终端的测试估值进行评估,并将测试终端的测试估值CG反馈至控制中心;供管理员查看分析。
[0005]进一步地,所述接口测试模块的具体测试步骤为:S1:维护配置文件,维护接口文档地址、Excel名称等信息项;S2:执行get

swagger

api py文件,自动生成两个接口信息Excel;S3:手动维护Excel中的接口参数,有特定意义的参数不做边界值和特殊字符用例;S4:手动维护“单个api的文件”Excel文件,手动录入每个接口的正确有效参数;S5:执行rebuid_Auto Testsuite文件,自动生成每个接口基于每个参数组合的测试用例Excel;S6:执行runtest文件,自动执行所有测试用例,自动生成Excel,得到测试报告report.xlsx。
[0006]进一步地,所述终端监测模块的具体分析步骤为:当监测到测试终端调用接口自动化框架进行接口测试时,每间隔R2时间采集测试终端的状态参数;根据状态参数计算得到测试终端的状态系数ZX;建立状态系数ZX随时间变化的曲线图;将状态系数ZX与预设状态阈值相比较;若ZX≤预设状态阈值,则在对应的曲线图中截取对应的曲线段并进行标注,记为偏离曲线段;统计偏离曲线段的数量为P1,将偏离曲线段中对应ZX与预设状态阈值的差值对时间进行积分得到偏离参考面积M1,利用公式PL=P1
×
a1+M1
×
a2计算得到对应测试终端的状态偏离值PL,其中a1、a2均为系数因子。
[0007]进一步地,状态系数ZX的具体计算方法为:所述状态参数包括访问节点连接数、CPU负载率、带宽负载率和实时网络速率;将访问节点连接数、CPU负载率、带宽负载率和实时网络速率依次标记为Q1、Q2、Q3、Q4;利用公式ZX=(Q1
×
b1+Q4
×
b4)/(Q2
×
b2+Q3
×
b3)计算得到测试终端的状态系数ZX,其中b1、b2、b3、b4为系数因子。
[0008]进一步地,所述终端监测模块用于将偏离预警信号传输至控制中心;所述控制中心接收到偏离预警信号后控制报警模块发出警报。
[0009]进一步地,所述终端评估模块的具体评估步骤为:根据时间戳,获取预设时间内测试终端所有的测试记录;统计测试终端的测试总次数为测试频次N1;将每次测试的测试时长标记为NTi,将
对应测试过程中的状态偏离值标记为NLi;利用公式NPi=NTi
×
a3+NLi
×
a4计算得到测试偏离值NPi,其中a3、a4均为系数因子;将测试偏离值NPi与预设测试阈值相比较;所述预设测试阈值包括X2、X3,且X2>X3;X2、X3均为固定数值;统计NPi≥X2的次数占比为Zb1;统计X3<NPi<X2的次数占比为Zb2,统计NPi≤X3的次数占比为Zb3;利用公式CG=
µ×
N1
×
(Zb3
×
2+Zb2)/(Zb1
×
3)计算得到所述测试终端的测试估值CG,其中
µ
为预设均衡因子。
[0010]与现有技术相比,本专利技术的有益效果是:1、本专利技术中所述框架构建模块用于基于Python与swagger接口文档相结合,构建自动生成用例的接口自动化框架;所述接口测试模块用于应用框架构建模块构建的接口自动化框架进行接口测试;本本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于Python和Excel的接口自动化框架控制系统,其特征在于,包括框架构建模块、接口测试模块、终端监测模块以及终端评估模块;所述框架构建模块用于基于Python与swagger接口文档相结合,构建自动生成用例的接口自动化框架;所述接口自动化框架包含四个py文件以及一个Yml配置文件;其中,Yml配置文件用于把公共信息项维护在一个配置文件里面;py文件用于生成Excel以及用例;所述接口测试模块包括若干个测试终端,用于应用框架构建模块构建的接口自动化框架进行接口测试;所述终端监测模块用于对测试终端进行接口测试监测,并对接口测试过程中测试终端的状态偏离值进行评估;若状态偏离值PL大于预设偏离阈值,则生成偏离预警信号;以提醒管理人员对所述测试终端进行检修,并更换其他测试终端继续测试;所述终端监测模块还用于将测试终端的测试时长和状态偏离值PL进行统合形成测试记录并将测试记录打上时间戳存储至云平台;所述终端评估模块与云平台相连接,用于根据云平台内存储的带有时间戳的测试记录对测试终端的测试估值进行评估,并将测试终端的测试估值CG反馈至控制中心;供管理员查看分析。2.根据权利要求1所述的基于Python和Excel的接口自动化框架控制系统,其特征在于,所述接口测试模块的具体测试步骤为:S1:维护配置文件,维护接口文档地址、Excel名称等信息项;S2:执行get

swagger

api py文件,自动生成两个接口信息Excel;S3:手动维护Excel中的接口参数,有特定意义的参数不做边界值和特殊字符用例;S4:手动维护“单个api的文件”Excel文件,手动录入每个接口的正确有效参数;S5:执行rebuid_Auto Testsuite文件,自动生成每个接口基于每个参数组合的测试用例Excel;S6:执行runtest文件,自动执行所有测试用例,自动生成Excel,得到测试报告report.xlsx。3.根据权利要求1所述的基于Python和Excel的接口自动化框架控制系统,其特征在于,所述终端监测模块的具体分析步骤为:当监测到测试终端调用接口自动化框架进行接口测试时,每间隔R2时间采集测试终端的状态参数;根据状态参数计算得到测试终端的状态系数ZX;建立状态系数ZX随时间变化的曲线图;将状态系数ZX与预设状态阈值相比较;若ZX≤预...

【专利技术属性】
技术研发人员:方斯祺李钊辉吴磊田彬彬罗汉
申请(专利权)人:科讯嘉联信息技术有限公司
类型:发明
国别省市:

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

1