首页 技术 正文
技术 2022年11月16日
0 收藏 351 点赞 3,464 浏览 2576 个字

背景

公司计划推接口和性能测试,搭建这个性能测试框架框架是希望能够让每个人(开发人员、测试人员)都能快速的进行性能,接口测试,而不需要关注性能测试环境搭建过程。因为,往往配置一个性能环境可能需要很长的时间。

该框架搭建 基于Jmeter和Jenkins搭建性能测试框架 和 jenkins+ANT+jmeter 接口测试环境搭建 演化过来。

Jmeter GUI上制定测试计划

Thread Group

用函数__P()设置属性名和默认值的形式设置这三个属性,以方便在使用no-GUI模式启动Jmeter进行测试时,使用–jmeterproperty选项对属性值进行赋值。

基于jmeter,jenkins,ANT接口,性能测试框架

CSV Data Set Config

基于jmeter,jenkins,ANT接口,性能测试框架

并发数配置

基于jmeter,jenkins,ANT接口,性能测试框架

HTTP Request

基于jmeter,jenkins,ANT接口,性能测试框架

HTTP Request关联

基于jmeter,jenkins,ANT接口,性能测试框架

jenkins调用command non-GUI方式执行Jmeter

 

set RUNFOLDER=%WORKSPACE%
set JMETERBIN=D:\Devlop\jmeter\apache-jmeter-2.7\bin
set JMETERLIB=D:\Devlop\jmeter\apache-jmeter-2.7\lib
set RESULTJTL=%RUNFOLDER%\result.jtl
set TRANSJTL=$RUNFOLDER\trans.jtl
set EXCELJTL=$RUNFOLDER\execl.jtl
del -f -s -Q %RUNFOLDER%\*.jtl
del -f -s -Q %RUNFOLDER%\Report\*jmeter -n -t jmx\*.jmx -l result.jtl --jmeterproperty threadCount=%CONCURRENCY% --jmeterproperty LoopCount=%LOOPCOUNT% --jmeterproperty RampUp=%RAMPUP% --jmeterproperty jenkins_workspace=%WORKSPACE%

  调用ANT生成html报告

<?xml version="1.0" encoding="UTF-8"?><project name="ant-jmeter-test" default="all" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="D:\Devlop\jmeter\apache-jmeter-2.7" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value=".\" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value=".\Report" />
<!-- 生成的报告的前缀 -->
<property name="ReportName" value="result" /><property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl" />
<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.html" />
<!-- Diffrent version of Jmeter has its own ant-jmeter.jar,Please input the right versioin -->
<path id="ant.jmeter.classpath">
<pathelement location="${jmeter-home}/extras/ant-jmeter-1.1.1.jar" />
</path>
<!-- use this config to generate html report; if not, may not display Min/Max Time in html-->
<path id="xslt.classpath">
<fileset dir="${jmeter.home}/lib" includes="xalan-2.7.1.jar"/>
<fileset dir="${jmeter.home}/lib" includes="serializer-2.7.1.jar"/>
</path> <target name="report">
<xslt in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}" classpathref="xslt.classpath" rel="external nofollow" rel="external nofollow"
style="${jmeter.home}/extras/jmeter-results-detail-report_30.xsl.xml" />
<xslt in="${jmeter.result.jtlName}"
out="${jmeter.result.html.dir}\TestLog.html" classpathref="xslt.classpath" rel="external nofollow" rel="external nofollow"
style="${jmeter.home}/extras/jmeter-results-shanhe-me.xsl" /> <!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
</project>

  基于jmeter,jenkins,ANT接口,性能测试框架

推送HTML报告

基于jmeter,jenkins,ANT接口,性能测试框架

jenkins执行界面

文件jmx和build只需提交默认提供文件

最终使用者只需要使用excel修改csv用例数据就可以进行进口和性能数据的采集

基于jmeter,jenkins,ANT接口,性能测试框架

执行结果

执行结果同前面两个方案一致,不再补充

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,023
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,513
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,360
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,143
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,774
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,852