jenkins整合jmeter实现自动化接口测试

一、在机器上安装jmeter

下载:http://jmeter.apache.org/download_jmeter.cgi

这里我用了一台Windows安装jmeter用来写接口测试的脚本,启动前修改jmeter.properties中jmeter.save.saveservice.output_format值为xml。

编写接口测试脚本:

脚本test.jmx保存。

另外一台centos的机器也下载安装jmeter。

mkdir -p /usr/local/jmeter ,下载tgz结尾的压缩包解压到此目录,创建log,script(接口测试脚本test.jmx存放在此目录)

vim apache-jmeter-5.1.1/bin/jmeter.properties

修改jmeter.properties中 jmeter.save.saveservice.output_format值为xml:

扫描二维码关注公众号,回复: 8514459 查看本文章

二、jenkins配置

1.安装插件

Performance Plugin 用于展示测试结果 

add post-build step 选择执行shell:

使用非 GUI 模式运行测试脚本: 

  • -n : 非 GUI 模式 -> 在非 GUI 模式下运行 JMeter
  • -t : 测试文件 -> 要运行的 JMeter 测试脚本文件
  • -l : 日志文件 -> 记录结果的文件
  • -e : 测试结束后,生成测试报告
  • -o : 指定测试报告的存放位置

脚本文本:

rm -rf /usr/local/jmeter/log/*
rm -rf /usr/local/jmeter/html/*
rm -rf ${WORKSPACE}/test.jtl
/usr/local/jmeter/apache-jmeter-5.1.1/bin/jmeter.sh  -n -t /usr/local/jmeter/script/test.jmx -l test.jtl -j  /usr/local/jmeter/log/test.log

脚本执行完成,若单元测试有失败的用例,则可以用shell脚本终止构建继续执行:

脚本文本:

#!/bin/bash
dtime=$(date "+%Y%m%d%H%M")
echo "找到失败的用例:"
grep -c " <failure>true</failure>" ${WORKSPACE}/test.jtl
if [ $? = 0 ]
then 
  exit 1
else
  exit 0
fi

构建后操作选择:

生成测试结果报告。

publish performance test result report 配置 :

工作空间:

测试脚本执行时有用例失败的情况:

日志:

Jenkins中显示结果:

 用例执行成功:

发布了70 篇原创文章 · 获赞 63 · 访问量 23万+

猜你喜欢

转载自blog.csdn.net/xiaoxiangzi520/article/details/88951732