转载请注明出处。
Jmeter是天然支持命令行模式的,所以想和jenkins等持续集成平台结合是非常容易的。 这里我们仅仅阐述个例子,以及和jenkins结合时,可以利用jenkins的插件,并很好的可以和以前的build 构建进行数据对比。
这里作者想澄清下, jmeter作为一个性能测试工具,其实用来进行http接口等功能测试以及自动化测试也是完全可以胜任,所以jenkins的performance plugin 插件(https://wiki.jenkins-ci.org/display/JENKINS/Performance+Plugin) 只是可以进行性能数据对比,但却不支持功能测试的结果报告展现,所以下面会提到jmeter自带生成报告的功能。
1. jmeter的命令行模式执行。
1) jmeter自带的命令行模式
jmeter.sh (windows中使用 jmeter.bat) -h 可以查看帮助。
通常我们可以用 jmeter.sh -n -t /your/test/script.jmx -l /your/test/report.jtl
注意: 这里需要注意, 默认jmeter输出的 report.jtl 的格式内容是 csv格式的,我们需要改为 xml 格式。 因为 jenkins的performance 插件只识别 xml格式,否则无法对测试的结果进行提取数据并自动生成 性能趋势图(即构建build和之前构建的性能趋势)
修改jmeter.properties 将 找到格式的配置,将csv改为 xml。 (可以搜索csv)
2)ant
这里更建议使用ant模式进行启动jmeter并执行测试。 因为, extras 文件夹里的build.xml jmeter已经帮你写了默认的ant 脚本,这样可以直接修改或直接使用。 并能将输出的 xml 格式的结果,并转换为 html 格式。 这样便于我们分析测试结果数据。 因为jmeter 不仅是用于性能测试, 所以每一个case的成功与否,是我们需要关心的。 所以这个功能也是我们额外需要的。
build.xml 位于 jmeter的目录下的 extras 子目录
运行时,只需要 ant 即可。 前提你需要安装 ant 和 ant-trax 哦。
3) maven
使用maven也是支持的。 maven 的功能远比ant强大,但是由于jmeter的对maven的功能目前比较差,所以报告这个环节就输了。
关于maven和jenkins的可以访问 https://blog.codecentric.de/en/2014/01/automating-jmeter-tests-maven-jenkins/
4) 通过自己写程序调用(这里不进行过多的描述)
2. jenkins 报告
1) 安装好插件后 ( 安装见 https://wiki.jenkins-ci.org/display/JENKINS/Performance+Plugin )
2. 添加性能测试报告。 构建后,就可以看到性能测试数据表了。