创建Jenkins流水线测试任务
创建任务
- 创建流水线。进入Jenkins主页,在左侧树单击“新建任务”。图1 创建pipeline任务1
- 打开新建任务页面,填写任务名称,选择流水线选项,单击“确定”按钮创建任务。图2 创建pipeline任务2
- 进入到新创建的Pipeline任务中,左侧树单击“配置”,打开配置页面。将Java性能分析示例样例复制到流水线配置的脚本中,最后单击“保存”。
- 单击任务左侧树“Build with Parameters”,执行任务。图4 执行任务
- 查看任务执行状态。图5 查看执行状态
- 单击左侧树对应代码中的报告名称,如图6所示。
- 查看报告内容。图7 Java性能分析报告内容1
图8 Java性能分析报告内容2
Jenkins流水线测试代码示例
Java性能分析代码示例。
pipeline {
agent any
options {
timeout(time: 1, unit: 'HOURS')
}
parameters {
string(name: 'GIT_URL', defaultValue: 'https://github.com/ruanjue/wtdbg2.git', description: '--> git url <--')
string(name: 'GIT_BRANCH', defaultValue: 'v2.5', description: '--> code branch <--')
string(name: 'GIT_TARGET_DIR_NAME', defaultValue: 'wtdbg2', description: '--> code branch <--')
}
stages{
stage('Git Code') {
agent {
label 'kunpeng_java_builder'
}
steps {
echo '====== 获取源码 ======'
checkout scmGit(branches: [[name: "${params.GIT_BRANCH}"]],
browser: github("${params.GIT_URL}"),
extensions: [[$class: 'RelativeTargetDirectory',
relativeTargetDir: "${params.GIT_TARGET_DIR_NAME}"],
cleanBeforeCheckout(deleteUntrackedNestedRepositories: true)],
userRemoteConfigs: [[url: "${params.GIT_URL}"]])
}
}
stage('java-performance-analysis') {
agent {
label 'kunpeng_java_builder'
}
steps {
echo '====== java-performance-analysis ======'
sh '''
if [ ! -d "./report_dir" ]; then mkdir -p ./report_dir; fi
/usr/bin/rm -rf ./report_dir/*.html
# 设置当返回不为0时 停止下一步,直接返回
set -e
CURDIR=$(pwd)
# 删除上次jmeter产生的报告 (jmeter 命令-l、-o指定的文件和路径)
rm -rf /home/zpp/report /home/zpp/result.html
# 运行java性能采集
/home/zpp/.local/devkit_tester/bin/entrance -i 160.0.1.2,160.0.1.3 -u root -f /home/zpp/.ssh/id_rsa -D 160.0.1.5 -a spring-boot -d 10 -g /home/zpp/spring-boot -j "sh /home/zpp/apache-jmeter-5.6.3/bin/jmeter.sh -nt /home/zpp/Test_request.jmx -l /home/zpp/result.html -eo /home/zpp/report" -o ./report_dir -m /home/zpp/.local/bisheng-jdk-17.0.10
'''
}
post {
always {
publishHTML(target: [allowMissing: false,
alwaysLinkToLastBuild: false,
keepAll : true,
reportDir : './report_dir',
reportFiles : 'devkit_performance_report.html',
reportName : 'Java Performance Report']
)
}
}
}
}
}
父主题: Java性能测试工具


