一键转化将接口测试平台测试用例转化成Jmeter压测脚本思路

2021-03-15 16:19:17 浏览数 (1)

之前开发的接口测试平台https://github.com/liwanlei/FXTest,今天的时候,想开发一个将测试用例转化成Jmeter压测脚本的功能。想着还是在原来的框架下做开发。那么我是怎么构思的呢。

目的:

1.将现有的接口测试用例,直接转化成压测脚本,远程一键化执行。减少测试编写脚本的时间。

2.一键转化,减少工作量,自动化执行压测。不再人为控制,节约时间

3.自动化压测存储结果,自动压测,对比分析测试报告。

方法:

基于现有的测试平台做改造。精确到每个测试用例都可以转化。利用参数的入参和断言,转化成Jmeter压测脚本,一键复制到执行机上进行执行。收集测试结果,可以查看压测过程中的各种监控数据,历史版本之间平台自动化分析测试结果。

步骤:

1.选择测试用例

2.点击一键转化

3.根据选择测试环境,后台一键转成脚本,存储到数据库中

4.根据配置服务器,后台之间复制到对应服务器,通过Jmeter无GUI模式运行。

5.执行后,数据,实时写入数据库,测试报告存储。

6.后台自动寻找历史数据,进行比对。

7.展示性能变化。

大致的步骤就是上述中的了。我们要对里面可以出现的问题,进行分析。适配更多的情况。由于我们的参数有依赖,我们依赖的数据怎么处理,数据需要变动怎么处理,所以在实际的开发中我们要做一下思考。

代码语言:javascript复制
1.变动的参数,参数化如何引入
2.接口依赖如何修改。
3.动态参数如何处理
4.依赖登录如何处理
5.后期如何扩展到对测试场景的转化
6.如何设置梯度并发量。

考虑以上的六个问题,然后根据7个步骤,对测试平台的改造进行设计,我们要考虑成本最小化,也要考虑到后期的可拓展性,通盘考虑。针对Jmeter的脚本的参数如何控制,如何写入到.jmx文件中去。在转化的时候,我们要对JMeter的脚本的结构,参数的入参,需要什么参数怎么修改,要了如指掌。要保证,我们的生产的脚本是可以正常运行的。这里如果不太数据的,我们可以根据不同类型的脚本呢,去展开分析,看哪里的参数怎么变,变什么值需要修改哪里。

在脚本转化完后,我们还要考虑到复制到对应的服务器上,远程登录服务器,进行复制脚本,复制完毕后,远程要调用执行。在执行的过程中,平台可以一键跳转数据监控上。

压测过程,压测数据要进行收集,展示。测试报告的数据要进行汇总存储。存储的时候要和对应的测试用例,测试环境,测试数据做关联的。

对比历史结果,要根据入参,服务器等情况,按照同样纬度进行对比。

以上呢,就是在整个拓展中考虑的各种情况。当然还实际开发中,还会遇到很多的情况。这里呢,我选择利用我已经开源的平台做的功能的设计,整个的开发过程呢,我会用java实现,验证完毕后,后期会开源到python的平台中去,整体的思路没有太多的差异。目前这个功能,从构思到实践,已经走过了很久的一段路。这里抛砖引玉的讲解下。希望能给大家带来一些思路把,也是丰富我们测试平台的一个功能,但是我对这个功能的定位呢,是接口性能小规模的压测的验收,至于庞大复杂的压测活动,这里现在还无法执行呢。那样需要一个专门的平台,去压测。不过这里也可以转化脚本。后续会考虑。

欢迎持续关注雷子说测试,给大家分享更多的测试知识,点亮在看,帮助更多的人。

0 人点赞