将jmeter+ant移植到linux环境下运行
- 背景:
目前jmeter+ant+发送邮件已经在windows下可以正常,想要将接口自动化测试用例关联到jenkins,实现可持续集成的一部分。
目前的设想是:jenkins构建项目成功后,自动执行jmeter中的接口测试用例,并将测试结果以邮件的形式发送给相关人员。
本次只实现将jmeter移植到linux环境下,并能正常执行成功的内容
步骤一、将压缩包上传到jenkins环境下
1、准备好jmeter+ant的接口测试用例,压缩为zip格式
2、使用远程工具,登录到jenkins的目录下,在该目录下创建jmeter的文件夹,放置1中的压缩包
3、命令行解压压缩包:unzip xxx
步骤二、要运行接口测试用例,需要先设置环境变量
1、找到linux中的环境变量文件,该文件是prfile。位置:etc/frofile
2、配置jdk环境变量:
export JAVA_HOME=/usr/java/jdk1.8.0_281
3、配置jmeter环境变量
export JMETER=/home/admin/jenkins/Jmeter/Jmeter_AutoAPITest/apache-jmeter-3.3
export CLASSPATH=$JAVA_HOME/lib:$CONF_DIR$JMETER/lib/ext/ApacheJMeter_core.jar:$JMETER/lib/logkit-2.0.jar:$CLASSPATH
4、配置ant环境变量
export ANT_HOME=/home/admin/jenkins/Jmeter/Jmeter_AutoAPITest/apache-ant-1.9.6
export PATH=$PATH:$ANT_HOME/bin
步骤三、校验是否配置正确
1、校验jdk是否正常
在命令行中,输入:java -version
正确显示出当前jdk版本即表示成功。(jmeter需要jdk版本在1.8以上才行)
2、校验jmeter是否正常
只要jmeter可以正常执行起来,即表示正常。要执行jmter.sh文件,需要先给该文件权限:
cd /home/admin/jenkins/Jmeter/Jmeter_AutoAPITest/apache-jmeter-3.3/bin路径下
chmod 777 jmeter.sh ##该操作是给该文件所有的权限
sh jmeter.sh -v ##该操作是执行该文件,该文件起来无报错即表示成功
3、校验ant是否正常
cd /home/admin/jenkins/Jmeter/Jmeter_AutoAPITest/apache-ant-1.9.6
chmod 777 apache-ant-1.9.6 # 该操作是给ant这个文件夹所有权限读写执行
在命令行中,输入:ant -version 正确显示出当前ant版本即表示成功。
步骤四、使用ant,手动执行测试用例
1、修改测试用例中build.xml配置文件。将里面的路径修改为当前环境中的路径;
2、在命令行:ant 若可以正常执行,表示配置正常
3、去报告中查看是否有产生测试报告
遇到的问题:
1、在执行ant时,遇到【 Invalid byte 3 of 3-byte UTF-8 sequence.】
原因:build.xml配置文件,使用的编码方式是utf-8.中文会产生乱码,只要将编码方式修改为:gbk。重新执行即可成功
2、