环境要求

  • JDK1.8 下载http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
  • jmeter 下载http://jmeter.apache.org/download_jmeter.cgi
  • ant 官网下载http://ant.apache.org/bindownload.cgi
  • jenkins

提醒

ubuntu环境下搭建本套集成,推荐所有均安装在home下面,强烈不推荐安装在根目录下。调试过程中会有很多权限问题

安装环境

JDK安装

ubuntu自己安装有openidk,推荐使用sunjdk

  1. 下载jdk1.8 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
  2. 将压缩包粘贴至home下,解压
    tar -xvf jdk-8u161-linux-x64.tar.gz
  3. 修改jdk环境变量
    sudo vi /etc/profile
    点击i进入编辑模式,修改java环境变量
    export JAVA_HOME=/home/qydev/softwares/jdk1.8.0_161
    export PATH=jenkins 检测 服务是否启动成功_jenkins 检测 服务是否启动成功PATH
    export CLASSPATH=.:jenkins 检测 服务是否启动成功_html_02JAVA_HOME/jre/lib:$CLASSPATH
  4. 点击esc退出编辑模式,点击shift+:后输入wq回车保存并退出
  5. 使全局变量生效
    source /etc/profile
  6. 验证java版本
    java -version

jmeter安装

下载就jmeter安装包jmeter-3.3.zip

解压压缩包至文件内:

  1. cd 打开压缩包所在文件夹
  2. 解压
    unzip apache-jmeter-3.3.zip
  3. 打开bin文件夹
    cd apache-jmeter-3.3.zip
    cd bin
  4. 运行jmeter
    ./jmeter.sh
  5. 锁定启动器在侧栏
    图标右键锁定即可

ant安装并调试

  1. 到官网下载http://ant.apache.org/bindownload.cgi最新版,得到一个 apache-ant-1.10.2-bin.tar.gz
  2. 直接解压 apache-ant-1.10.2-bin.tar.gz到想要的目录,就算安装成功了
  3. 配置Ant环境变量:sudo vi /etc/profile
    添加以下变量路径修改为自己的:
    export ANT_HOME=/home/qydev/softwares/ant/apache-ant-1.10.1
    export PATH=jenkins 检测 服务是否启动成功_html_03PATH
  4. 生效环境变量 source /etc/profile
  5. 打开终端,输入ant -version,打印出ant版本号表示配置成功
  6. 将Jmeter所在目录下extras子目录里的ant-jmeter-1.1.1.jar复制到ant所在目录lib子目录之下,ant运行时才能找到
    "org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"这个类,之后可以触发Jmeter脚本
  7. 建了一个目录/home/qydev/softwares/jmeter_test/result_log,目录中分别建立了html和jtl两个文件夹,之后Ant运行之后将jtl中的文件转换成html中
  8. 在/home/qydev/softwares/jmeter_test文件中建立一个build.xml文件,build.xml内容已放在git上
  9. 打开终端命令窗口,cd到/home/qydev/softwares/jmeter_test目标路径下,输入命令ant,运行结束会有success信息提示,并在/home/qydev/softwares/jmeter_test/result_log/jtl下生成一个jtl文件,证明调试成功.

jenkins安装

  1. 打开终端命令窗口,一步步执行以下命令:
    wget -q -O - https://pkg.jenkins.io/debian/jenkins-ci.org.key | sudo apt-key add -
    sudo sh -c ‘echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list’
    sudo apt-get update
    sudo apt-get install jenkins
  2. ps -ef |grep jenkins 查看进程,查看到jenkins已安装到电脑目录下,表示安装成功.
  3. 创建一个名为Jenkins的Linux用户:sudo cat /etc/passwd
  4. Jenkins 默认端口是8080,如需修改,在配置文件/etc/default/jenkins 中修改HTTP_PORT=8080即可。
  5. 上面只是安装完成了Jenkins,还需要进行一些配置才可以,这时通过浏览器本地ip+端口号就可以访问Jenkins了。比如我的地址:http://localhost:8080
  6. 通过Ip访问后,第一个页面为: [外链图片转存失败(img-m1jTG1mI-1563363856127)(http://photo.163.com/qiyuanyoudai/#m=2&aid=316679009&pid=9899465147)]
    可以看到提示,为了确保Jenkins的安全,将管理员的密码写入文件,需要复制initialAdminPassword到上面的文本框做验证.进入/var/lib/jenkins/secrets/initialAdminPassword复制(sudo nautilus可以超级权限打开文件夹)
    然后,到了选择插件的界面,

    ,选择第一个建议安装的就可.
    插件安装完成,就到了创建用户的界面,这里可以创建一个Jenkins用户,到此处配置完,基本配置就完成了。

其他配置

  1. 在home目录下新建一个文件夹,主目录jmeter_test,主目录下的子目录:result_log、script、build.xml
    (相应的项目文件代码见下一个文档build.xml)
    将build.xml文件复制到~/home/qydev/.jenkins/workspace/test目录下(jenkins的工作区在此处,要将构建文件放进工作区)
  2. 使用jmeter完成一个接口脚本的调试,确保调试成功并保存至项目文件script目录下。
  3. 将报告格式拷贝至apache-jmeter-3.3/extras目录下(jmeter.results.shanhe.me.xsl、jmeter-results-report_21.xsl、jmeter-results-detail-report_21.xsl(该报告同前一个报告相同但详细一些))
  4. 修改apache-jmeter-3.3/bin/jmeter.properties文件
    Jmeter默认保存的是.csv格式文件,因此需要把默认的进行修改,进入jmeter安装目录,找到bin/jmeter.properties文件,修改jmeter.save.saveservice.output_format=xml,需要把前面的注释符去掉
    将下面内容改为如下(报告中有一些字段需要显示,哪些需要显示哪些改为true即可):
# assertion_results_failure_message only affects CSV output
#jmeter.save.saveservice.assertion_results_failure_message=false
#
# legitimate values: none, first, all
#jmeter.save.saveservice.assertion_results=none
#
jmeter.save.saveservice.data_type=true
jmeter.save.saveservice.label=true
jmeter.save.saveservice.response_code=true
# response_data is not currently supported for CSV output
jmeter.save.saveservice.response_data=true
# Save ResponseData for failed samples
jmeter.save.saveservice.response_data.on_error=true
jmeter.save.saveservice.response_message=true
jmeter.save.saveservice.successful=true
jmeter.save.saveservice.thread_name=true
jmeter.save.saveservice.time=true
jmeter.save.saveservice.subresults=true
jmeter.save.saveservice.assertions=true
jmeter.save.saveservice.latency=true
jmeter.save.saveservice.samplerData=true
jmeter.save.saveservice.responseHeaders=true
jmeter.save.saveservice.requestHeaders=true
jmeter.save.saveservice.encoding=true
jmeter.save.saveservice.bytes=true
jmeter.save.saveservice.url=true
jmeter.save.saveservice.filename=true
jmeter.save.saveservice.hostname=true
jmeter.save.saveservice.thread_counts=true
jmeter.save.saveservice.sample_count=true
jmeter.save.saveservice.idle_time=true

创建jenkins项目

配置jenkins及搭建项目

安装相关插件

需要安装以下插件:Maven Integration plugin、Git plugin(如果需要git)、Email Extension Plugin、HTML Publisher plugin 、Performance Plugin

设置jenkins,系统管理-全局工具配置

在Jenkins首页,点击系统管理,然后右侧选择全局工具配置,进入全局工具配置页面,前面的不需要改动,往下滑动到JDK及ant安装处
(1)JDK安装,输入jdk版本和jdk安装的目录路径
(2)ant安装,输入ant版本和ant安装的目录路径

邮件设置

  1. 在Jenkins首页,点击系统管理,然后右侧选择系统管理,进入系统管理,找到Jenkins location,Extended E-mail Notification其中Jenkins URL有默认值,但是最好修改为http://172.16.0.18:8081/jenkins/。系统管理员邮件地址也一定要写,否则所发邮件会变为垃圾邮件。
  2. 密码需要登录QQ邮箱-账户设置-开启以下服务,发送短信,获取密码(非邮箱登录密码,stmp服务授权密码)复制粘贴至jenkins邮件通知密码处即可。

使用Jenkins,构建项目

构建的build.xml文件、测试报告文件参考下载链接: https://pan.baidu.com/s/1t04LWcqW69it26nzH5LA0g 提取码: fksx

新建项目

第一次使用Jenkins,需要新建项目,点击左侧菜单的新建,右侧选择构建一个项目,并根据实际,输入项目名称。

构建项目后回到首页,点击左边的配置

需要勾选“丢弃旧的构建”,不然每次构建数据都保存,浪费储存空间,这里保留的个数和天数的数值,根据需要填写。

源码管理

高级下方的源码管理选择none,如用git管理勾选对应选项。

构建触发器-Build periodically

设置定时运行时间,设置时间格式如下:
每15分钟构建一次:H/15 * * * * 或*/5 * * * *
每天8点构建一次:0 8 * * *
每天8点~17点,两小时构建一次:0 8-17/2 * * *
周一到周五,8点~17点,两小时构建一次:0 8-17/2 * * 1-5
每月1号、15号各构建一次,除12月:H H 1,15 1-11 *
*/5 * * * * (每5分钟检查一次源码变化)
0 2 * * * (每天2:00 必须build一次源码)

增加构建步骤

选择invoke ant ,然后在Ant Versionn处,选择之前安装的ant版本,Targets填写all即可;右侧点击高级,展开的页面,在Build File中填写脚本文件的路径以及名称(例:/home/qydev/.jenkins/workspace/test/build.xml),Properties填入test=build.xml

增加构建后操作步骤
  1. publish html reports,Jenkins的项目中,就会出现一个HTML样式测试报告的菜单
  2. HTML directory to archive处填写报告生成后存放的地址(例:/home/qydev/jmeter/jmeter_test/result_log/html)
  3. Index page[s]处改为*.html
增加构建后操作步骤
  1. E-mail Notification,当构建不稳定或者失败时会通知收件人,输入接收邮件即可
邮件内容设置
  1. 项目配置-增加构建后操作-选择"Editable Email Notification"
    第一项Project Recipient List:添加收件人邮箱,如有多个收件人需要换行;
    第二步点击右下角高级选择Always,此处表示主要构建就要发邮件,然后再点击高级,Reply-To List此处填写发件人,Content Type选择HTML,Subject填写邮件标题,Content邮件内容.
    第三步Content邮件内容如下:

${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志 XX公司

<tr>
        <td colspan="2" align="center">
            <div>${FILE ,path="wpeng_test/*.xml"}</div>
        </td>
    </tr>
    <tr>
        <td>
            <b><font color="#0B610B">变更信息:</font></b>
           <hr size="2" width="100%" align="center" />
        </td>
    </tr>
    <tr>
        <td>
            <ul>
                <li>上次构建成功后变化 :  ${CHANGES_SINCE_LAST_SUCCESS}</a></li>
            </ul>    
        </td>
    </tr>

(Hi all 本邮件为启元接口运行情况报告,由程序自动下发,请勿回复!)

构建结果 - ${BUILD_STATUS}


构建信息



  • 项目名称:${PROJECT_NAME}
  • 构建编号:${BUILD_NUMBER}
  • 详细测试报告 : ${PROJECT_URL}测试报告

  • 构建日志:${BUILD_URL}console


测试报告

  • 上次构建不稳定后变化 : ${CHANGES_SINCE_LAST_UNSTABLE}
  • 历史变更记录 : ${PROJECT_URL}changes

第四步:填写完成点击保存,即可. 以上项目配置完成,就可以构建了,构建时,点击左侧的立即构建按钮,即可开始项目构建。

构建成功

  1. 回到项目文件/home/qydev/softwares/jmeter_test/result_log/html即可查看所监控的接口报告。
  2. 生成的报告如果Min Time和Max Time 结果为NaN,解决方法为:
    把jmeter安装目录Lib下的xalan-2.7.2.jar,serializer-2.7.2.jar 这两个包复制丢掉ant安装目录lib下即可.