1.背景
最近部门有接口和性能自动化测试的需求,公司没有现成框架,通过分析,最终尝试了JMeter二次开发来满足需求。选型主要考虑了以下原因:
(1)JMeter是业内成熟框架,可支持Java Request模式
(2)后期可快速实现性能测试
(3)JMeter有开源Java代码,可实现定制内容
(4)该方案已有成功先例
2.核心框架
经过分析,可以有两种不同的实现方式。我称之为:“真·二次开发”和“伪·二次开发”。
所谓“真·二次开发”指的是:基于JMeter开源Java代码,直接修改来适配项目的需求。而“伪·二次开发”就是:保持JMeter的源码封装,实现其开放的API接口,完成Plugin级别的开发。
考虑到当前人手和时间限制,选择了相对稳妥的Plugin二次开发,即Java Request开发。
3.开发流程
(1)新MAVEN项目(Plugin项目),导入JMeter包
(2)继承并实现抽象类AbstractJavaSamplerClient
(3)导出JAR包,放入JMeter依赖库
(4)使用JMeter的GUI界面,输入测试用例详细内容,导出JMX文件
(5)新MAVEN项目(执行项目),导入JMeter依赖和新开发的Plugin包,并放入JMX文件
(6)项目通过POM文件执行JMeter插件,命令行mvn verify
4.部署流程
(1)安装执行项目(EXE打包或测试平台接入)
(2)测试数据部署
5.使用流程
(1)确认业务需求
(2)配置测试数据
(3)执行相应命令行完成业务测试
本文为总体概述,接下来会进行详细介绍。