1. Jenkins脚本

# 提升账户权限
sudo -i

# 清空自定义的操作台目录
echo "===============清空操作台==============="
cd /data/performance/
rm -rf ./*


# 操作台创建(存储脚本、存储日志)文件夹
echo "===============复制脚本+数据==============="
mkdir /root/.jenkins/workspace/Netdisk/result
mkdir -p /data/performance/runtest
mkdir -p /data/performance/logs/html


# 复制jmx、data、jar到工作台
cp -r /root/.jenkins/workspace/Netdisk/src/test/jmeter/* /data/performance/runtest/


# 开始jmeter压测,结果存储到日志文件夹
echo "===============开始脚本==============="
/usr/local/apache-jmeter-5.4.1/bin/jmeter -n -t /data/performance/runtest/jmx/${scriptName} -l /data/performance/logs/result${threadNums}.jtl -JthreadNums=${threadNums} -Jdurations=${durations} -e -o /data/performance/logs/html/

# 将结果文件夹打包压缩,存放到Jenkins默认的工作空间下(方便直接在Jenkins中查看压测结果)
cd /data/performance/logs
tar -zcf /root/.jenkins/workspace/Netdisk/result/$(date "+%Y%m%d%H%M%S").tar.gz ./*

2. 配置过程中的QA:

  1. Jenkins实现参数化,可以自定义并发数、持续时间、执行脚本名等
    • General-参数化构建过程-选项参数,可以实现自定义并发数(类似于单选框)
    • General-参数化构建过程-字符参数,可以实现在压测时自定义脚本名称(类似于文本框)
      Jenkins中使用jmeter的脚本_自定义
  2. Jenkins压测后想在“状态集”中就能看到压测结果(点击就可以下载压测结果)
    1. 将压测结果集合在一个文件夹中(压测命令已经完成这一过程)

    2. 将文件夹暴露出来,方便压测后直接下载或在线预览结果(能力有限,没有用命令实现。使用Jenkins自带的功能实现了)

    3. 使用构建后操作-归档成品,将压测结果放到Jenkins默认工作空间目录下就会自动暴露指定文件

      # 表示将Jenkins的默认工作空间下的result文件夹下所有的tar.gz文件暴露出来
      # result文件夹是我自己创建的,方便使用,不是必须的
      result/*.tar.gz
      

    Jenkins中使用jmeter的脚本_jmeter_02