jenkins 构建执行jmeter测试流程
性能测试使用maven工程说明
1、依赖尽量用maven依赖管理
2、添加jmeter maven依赖
<dependency>
<groupId>org.apache.jmeter</groupId>
<artifactId>ApacheJMeter_core</artifactId>
<version>3.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.jmeter/ApacheJMeter_java -->
<dependency>
<groupId>org.apache.jmeter</groupId>
<artifactId>ApacheJMeter_java</artifactId>
<version>3.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.jmeter/jorphan -->
<dependency>
<groupId>org.apache.jmeter</groupId>
<artifactId>jorphan</artifactId>
<version>3.2</version>
</dependency>
<dependency>
<groupId>com.xxx</groupId>
<artifactId>ad</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/xxx-ad-facade-test-0.0.1-SNAPSHOT.jar</systemPath>
</dependency>
3、开发提供客户端jar包放在lib文件夹下,使用maven管理办法如下
<dependency>
<groupId>com.xxxx</groupId>
<artifactId>ad</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/xxx-xxx-test-0.0.1-SNAPSHOT.jar</systemPath>
</dependency>
4、参数文件、jmx文件放在项目根目录下面
5、maven编译jar包,这个jar包括参数文件,pom.xml添加build节点
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include> **/*.xml </include>
<include> **/*.txt </include>
<include> **/*.properties </include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
6、构建命令:-U clean install dependency:copy-dependencies -DoutputDirectory=target/apache-jmeter-3.2/lib 同时复制jar文件到jmeter下面
7、构建shell命令
#在构建目录下创建jmeter目录,在这个目录下面执行jmeter性能测试
mkdir -p $WORKSPACE/target/apache-jmeter-3.2/
#复制jmeter文件到执行测试目录
/bin/cp -r /app/jmeter/apache-jmeter-3.2/* $WORKSPACE/target/apache-jmeter-3.2/
#复制构建的java请求包到jmeter的ext目录下面
cp $WORKSPACE/target/xxx-ad-test-0.0.1-SNAPSHOT.jar $WORKSPACE/target/apache-jmeter-3.2/lib/ext/
#复制参数文件到jmeter bin目录下
cp $WORKSPACE/all_codes_in_a_string.txt $WORKSPACE/target/apache-jmeter-3.2/bin
#复制场景文件到jmeter bin 目录下面
cp $WORKSPACE/*.jmx $WORKSPACE/target/apache-jmeter-3.2/bin
#复制开发客户端jar包(没有用maven库管理的jar包)到ext文件夹下面
cp $WORKSPACE/lib/xxx-ad-facade-test-0.0.1-SNAPSHOT.jar $WORKSPACE/target/apache-jmeter-3.2/lib/ext/
#执行jmeter测试
$WORKSPACE/target/apache-jmeter-3.2/bin/jmeter -n -t AdRequest.jmx -l resutl.jtl
8、构建后操作使用插件:Publish Performance test result report
另外maven打包复制依赖包
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>false</overWriteSnapshots>
<overWriteIfNewer>true</overWriteIfNewer>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
jenkins 构建执行jmeter测试流程的更多相关文章
- jmeter测试流程整理
背景 整理jmeter脚本编写流程,注意事项,常用组件,常见问题. 参看链接:https://www.cnblogs.com/pwj2lgx/p/10282422.html 参看:processOn思 ...
- 写一个shell,自动执行jmeter测试脚本
贡献一个自己写的shell脚本,很简单,但又可以高效率的自动执行jmeter压测脚本. #!/bin/bash #author:zhangyl #version:V1 #该脚本放置于压测脚本的上一层目 ...
- 解决Jenkins中执行jmeter脚本后不能发报告(原报告被覆盖、新报告无法保存)的问题
我没有找到根本原因,但是我用了个取巧的办法: 先将原来的报告移到别的文件夹,执行完jmeter脚本后,再把那些旧报告移回来(也可以不移回来,我这里是为了能从jenkins页面上看).
- jenkins构建执行shell 所有命令出现command not found
出现的问题: + rsync -avzP /mnt/workspace/df-admin/ root@192.168.0.153:/home/deploy/deep_fashion_targets/w ...
- 一个最简单的JMeter测试流程
环境: JMeter 3.3 JDK 1.8 首先下载JMeter安装包 可以去官网下载. http://jmeter.apache.org/ 然后选择Download Windows系 ...
- jenkins构建自动执行jmeter 发送http请求,中间有替换参数路径
#在构建目录下创建jmeter目录,在这个目录下面执行jmeter性能测试mkdir -p $WORKSPACE/target/apache-jmeter-3.1/#复制jmeter文件到执行测试目录 ...
- 在多机器上远程执行JMeter
安装完jmeter之后直接执行%InstallDir%\apache-jmeter-3.2\bin\JMeter.bat可以启动UI界面,可以编辑或者执行TestPlan等,默认情况下,用例是在本机执 ...
- Jmeter+maven+Jenkins构建云性能测试平台(mark 推荐)
转自:http://www.cnblogs.com/victorcai0922/archive/2012/06/20/2555502.html Jmeter+maven+Jenkins构建云性能测试平 ...
- 基于Jmeter+maven+Jenkins构建性能自动化测试平台
一.目的: 为能够将相关系统性能测试做为常规化测试任务执行,且可自动无人值守定时执行并输出性能测试结果报告及统计数据,因此基于Jmeter+maven+Jenkins构建了一套性能自动化测试平台 ...
随机推荐
- C++和.net的集合类对应
Here's what I've found (ignoring the old non-generic collections): Array - C array, though the .NE ...
- [Node.js]30. Level 6: Listen 'Question' from client, and then Answer the Question
Clients can also answer each other questions, so let's build that feature by first listening for the ...
- IN 查询时出现ORA-01795:列表中的最大表达式数为1000解决方法
问题描写叙述: SQL进行IN查询时出现:java.sql.SQLException: ORA-01795: 列表中的最大表达式数为 1000 解决的方法: 问题原因是:SQL进行IN查询时.IN中的 ...
- CDN具体解释(篇一)
CDN是一个致力于使内容传输更快.更高效的针对webserver的全局分布式网络.通过CDN来复制使这些内容能够在非常多地方同一时候存在. 比較有名的CDN厂商有AKamari,Amazon Clou ...
- Java 基本概念
1.JVM -- java virtual machine JVM就是我们常说的java虚拟机,它是整个java实现跨平台的 最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类 ...
- hibernate:MySQL No Dialect mapping for JDBC type: -1
出处:(hibernate中使用原生的sql语句,报如下错误:) MySQL No Dialect mapping for JDBC type: -1 代码: List list = session. ...
- 批量上传插件(flash,html5,jquery)
1.jQuery File Upload 官网:http://blueimp.github.com/jQuery-File-Upload/ 在线示例:http://blueimp.github.com ...
- ViewPage + RadioGroup + Fragment学习
底部是RadioGroup中RadioButton的切换.上面时ViewPage ,能够滑动,假设你们的需求是不须要滑动的话,那就直接用FrameLayout就能够了. 以下将会用两种方式实现.请大家 ...
- java面试第十一天
多线程: 进程与线程: 进程:同一个操作系统中执行的一个子程序,包含了三部分虚拟CPU.代码.数据 多进程:同一个操作系统中执行的多个并行的子程序.可以提高cpu的使用率 线程:在同一个进程当中执行的 ...
- webapp 里主要的 mate 用途
一.meta 标签分两大部分:HTTP 标题信息(http-equiv)和页面描述信息(name). 1.http-equiv 属性的 Content-Type 值(显示字符集的设定) 说明:设定页面 ...