首页 > 其他 > 详细

Jenkins集成Jmeter接口测试

时间:2021-06-09 18:15:08      阅读:36      评论:0      收藏:0      [点我收藏+]

依赖工具

服务器:配置Jenkins、Maven、Java环境
Jenkins插件:HTML Publisher plugin,Startup-trigger,Groovy

实现流程

  1. 在Jenkins创建一个Maven项目(依赖插件:Maven Integration plugin
  2. 勾选参数化构建过程,并输入:
名称 targetTagName
默认值 qt_fns
描述 JMX文件的文件名(不带后缀),用作:1、运行该文件名的脚本,如:groovy.jmx2、生成该文件名的报告,如:groovy.html

技术分享图片
3. 源码管理配置
技术分享图片
4. 配置构建触发器
技术分享图片

  1. 配置 Build 内容,输入:
    | Root POM | pom.xml |
    | ----------------- | ------------------------------------------ |
    | Goals and options | clean verify -D jmxName="${targetTagName}" |
    技术分享图片
  2. 配置 Post Steps,选中 Run regardless of build result ,添加 执行 shell 步骤,并输入
grep ‘class="Failure"‘ ./target/jmeter/html/${targetTagName}.html && exit 1 || echo "Run test successed"

技术分享图片

  1. 添加构建后操作:Publish HTML reports(依赖插件:HTML Publisher plugin),并输入:
    | HTML directory to archive | ./target/jmeter/html/ |
    | ------------------------- | --------------------- |
    | Index page[s] | ${targetTagName}.html |
    | Report title | HTMLReport |
    技术分享图片
  2. 添加构建后操作:Editable Email Notification,并输入
    | Project Recipient List(收件人邮箱) | liangrongfeng@7tao.net |
    | ------------------------------------ | ------------------------------------------------------ |
    | Content Type | 选中:HTML(text/html) |
    | Default Subject | $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS! |
    在Default Content输入:
<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>
</head>

<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4" offset="0">
    <div width="95%" cellpadding="0" cellspacing="0"
        style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
        <div>本邮件由系统自动发出,无需回复!
            <br />
            <br>各位同事,大家好,以下为${PROJECT_NAME }自动化测试项目构建信息
            <br />
            <div>
                <font color="#CC0000">构建结果 - ${BUILD_STATUS}</font>
            </div>
        </div>
        <div>
            <h4>
                <font color="#0B610B">构建信息</font>
            </h4>
            <hr size="2" width="100%" />
            <ul>
                <li>项目名称 :${PROJECT_NAME}</li>
                <li>构建编号 :第${BUILD_NUMBER}次构建</li>
                <li>触发原因: ${CAUSE}</li>
                <li>构建状态: ${BUILD_STATUS}</li>
                <li>构建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a>
                <li>工作目录: <a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>
                </li>
                <li>构建 Url  : <a href="${BUILD_URL}">${BUILD_URL}</a>
                </li>
                <li>项目 Url  : <a href="${PROJECT_URL}">${PROJECT_URL}</a>
                </li>
            </ul>
        </div>
        <div>
            <h4>
                <font color="#0B610B">测试报告</font>
            </h4>
            <hr size="2" width="100%" />
            <b>点击查看测试报告: <a href="${PROJECT_URL}${BUILD_NUMBER}/HTMLReport">${PROJECT_URL}${BUILD_NUMBER}/HTMLReport</a></b>
        </div>
https://jenkins.testops.top/job/jmeter3/28/APITest/
        <div>
            <h4>
                <font color="#0B610B">构建日志 (最后20行):</font>
                <hr size="2" width="100%" align="center" />
            </h4>
        </div>
        <div>
            <ul>
                <li>${BUILD_LOG, maxLines=22}</li>
            </ul>
        </div>
    </div>
</body>
</html>
  1. 需要在Jenkins系统配置中,配置发送邮件信息,如:
    技术分享图片

嵌入当前自动发布流程

  1. FNS项目在Jenkins构建成功后,触发『测试项目』执行
    技术分享图片
  2. 执行后,生成测试报告,样式如下
    技术分享图片
  3. 接口测试失败,可发送邮件,成功则不发送
    技术分享图片

其他问题

打开报告后不显示样式

如:

技术分享图片

解决方法:

  1. 安装Startup-trigger和Groovy插件
    技术分享图片
    技术分享图片

  2. 在Job配置页面,构建触发器,勾选Build when job nodes start
    技术分享图片

  3. 在Job配置页面,增加构建步骤Execute system Groovy script,在Groovy Command中输入下面命令,即可

System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")

技术分享图片

Jenkins集成Jmeter接口测试

原文:https://www.cnblogs.com/testopsfeng/p/14866726.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!