设为首页 收藏本站
查看: 1415|回复: 0

[经验分享] 基于Jenkins+Jmeter+ant的自动化测试框架

[复制链接]

尚未签到

发表于 2018-1-9 18:35:17 | 显示全部楼层 |阅读模式
  安装CentOS操作系统
  
  关闭系统防火墙
[iyunv@localhost ~]# systemctl stop firewalld.service

[iyunv@localhost ~]# systemctl disable firewalld.service

  
  下载安装lrzsz
  
[iyunv@localhost ~]# yum -y install lrzsz

  下载JDK8
  到Oracle官网下载 jdk-8u151-linux-x64.rpm
  上传JDK8到/opt目录中
[iyunv@localhost ~]# cd /opt

[iyunv@localhost opt]# rz

[iyunv@localhost opt]# ll

  -rw-r--r--. 1 root root 174163338 Dec  8 11:14 jdk-8u151-linux-x64.rpm
  安装JDK
[iyunv@localhost opt]# rpm -ivh jdk-8u151-linux-x64.rpm

  配置JDK环境变量
[iyunv@localhost opt]# vi /etc/profile

  按G将光标移动到文件末尾,按a进入编辑模式,在文件末尾添加以下内容
  export JAVA_HOME=/usr/java/jdk1.8.0_151
  export PATH=$PATH:$JAVA_HOME/bin
  添加完毕后按ESC--:wq保存提出
[iyunv@localhost opt]# source /etc/profile

  验证JDK环境变量配置
[iyunv@localhost opt]# java -version

  java version "1.8.0_151"
  Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
  Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)
  下载Jenkins
  到Jenkins官网下载rpm安装包
  上传Jenkins的rpm安装包到/opt目录中
  
[iyunv@localhost opt]# rz

[iyunv@localhost opt]# ll

  -rw-r--r--. 1 root root  74110870 Dec  8 10:51 jenkins-2.92-1.1.noarch.rpm
  安装Jenkins
[iyunv@localhost opt]# rpm -ivh jenkins-2.92-1.1.noarch.rpm

  把默认用户改成了root用户
  
[iyunv@localhost opt]# vi /etc/sysconfig/jenkins

  按a进入编辑模式,找到JENKINS_USER="jenkins",将jenkins修改为root。
  按ESC--:wq保存修改退出。
  配置Jenkins依赖的JDK
[iyunv@localhost opt]# vi /etc/init.d/jenkins

  按a进入编辑模式,找到
  candidates="
  /etc/alternatives/java
  /usr/lib/jvm/java-1.8.0/bin/java
  /usr/lib/jvm/jre-1.8.0/bin/java
  /usr/lib/jvm/java-1.7.0/bin/java
  /usr/lib/jvm/jre-1.7.0/bin/java
  /usr/bin/java
  "
  在candidates的值最后添加/usr/java/jdk1.8.0_151/bin/java
  candidates="
  /etc/alternatives/java
  /usr/lib/jvm/java-1.8.0/bin/java
  /usr/lib/jvm/jre-1.8.0/bin/java
  /usr/lib/jvm/java-1.7.0/bin/java
  /usr/lib/jvm/jre-1.7.0/bin/java
  /usr/bin/java
  /usr/java/jdk1.8.0_151/bin/java
  "
  按ESC--:wq保存修改,退出。
  启动Jenkins服务
[iyunv@localhost ~]# service jenkins start

  通过浏览器访问Jenkins
  在浏览器地址栏输入http://jenkins_ip:8080
  解锁Jenkins

[iyunv@localhost ~]# vi /var/lib/jenkins/secrets/initialAdminPassword

  将文件中的admin初始密码复制出来,粘贴到Unlock Jenkins页面中。点击Continue按钮。

  等待一段时间后进入定制Jenkins的页面

  点击Install suggested plugins,安装建议的插件

  插件安装中。。。。。。。
  插件安装完成后,创建管理员账户


  点击Save and Finish按钮

  点击Start using Jenkins进入Jenkins主页面

  为用户添加权限
  Jenkins--系统管理--全局安全配置

  授权策略--选择安全矩阵


  在添加用户/组处输入jenkins,点击添加按钮

  给jenkins用户授予所有权限

  点击保存按钮
  配置邮件
  Jenkins--系统管理--系统设置

  在系统管理员邮箱处输入发送邮件的邮箱地址

  拖动页面向下,找到Extended E-mail Notification配置

  点击高级按钮

  配置SMTP server为smtp.163.com
  配置Default user E-mail suffix为@163.com
  修改Default Content Type 为HTML(text/html)
  配置Default Recipients(收件人邮箱)
  添加以下内容到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">

  <table>  <tr>
  <td><br />
  <b><font color="#0B610B">项目信息</font></b>

  <hr>  </tr>
  <tr>
  <td>
  <ul>
  <li>项目名称:${PROJECT_NAME}</li>
  <li>构建编号:第${BUILD_NUMBER}次构建</li>
  <li>构建结果:${BUILD_STATUS}</li>
  <li>触发原因:${CAUSE}</li>
  <li>构建日志:<a href="${BUILD_URL}console">${BUILD_URL}console</a></li>
  <li>构建Url:<a href="${BUILD_URL}">${BUILD_URL}</a></li>
  <li>工作目录:<a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>
  <li>项目Url:<a href="${PROJECT_URL}">${PROJECT_URL}</a></li>
  </ul>
  </td>
  </tr>
  <tr>
  <td><br />
  <b><font color="#0B610B">测试报告</font></b>

  <hr>  </tr>
  </table>
  </body>
  </html>

  配置后继续向下配置邮件通知

  点击高级按钮

  勾选使用SMTP认证

  配置SMTP服务器为:smtp.163.com
  配置用户默认邮件后缀为:@163.com
  配置用户名为:thegreatthomas@163.com
  配置密码为:163邮箱的客户端授权密码(在163邮箱的设置--POP3/SMTP/IMAP--客户端授权密码中可以配置)

  勾选 通过发送测试邮件测试配置

  配置Test e-mail recipient,添加一个收件人邮箱,点击Test Configuration按钮测试邮件发送

  打开邮箱检查是否收到测试邮件

  邮件发送成功后,点击保存按钮,保存设置退出
  Jenkins默认不支持外部的CSS和JS,需要设置
  Jenkins--系统管理--脚本命令行

  添加以下代码并运行
  System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")

  安装HTML Publisher plugin
  Jenkins--系统管理--管理插件--可选插件
  选中HTML Publisher plugin,点击直接安装按钮

  勾选 安装完成后重启Jenkins

  如果页面长时间停留在重启的页面,可以按Ctrl + F5刷新以下页面。
  安装Jemter
  到jemter官网下载Jemter3.3(需要安装jdk8)
  上传Jemter安装文件到Linux的/opt目录下
[iyunv@localhost ~]# cd /opt

[iyunv@localhost opt]# rz

[iyunv@localhost opt]# ll

  -rw-r--r--. 1 root root  54742712 Dec  8 17:42 apache-jmeter-3.3.zip
  解压缩Jmeter安装包
  
[iyunv@localhost opt]# unzip apache-jmeter-3.3.zip

[iyunv@localhost opt]# ll

  drwxr-xr-x. 8 root root       138 Sep 17 19:34 apache-jmeter-3.3
  -rw-r--r--. 1 root root  54742712 Dec  8 17:42 apache-jmeter-3.3.zip
  配置Jmeter的环境变量
  
[iyunv@localhost opt]# vi /etc/profile

  按G到文件的最后,按a进入编辑模式,添加以下内容到文件末尾
  export JMETER_HOME=/opt/apache-jmeter-3.3
  export PATH=$PATH:$JMETER_HOME/bin
  按ESC--:wq保存退出
[iyunv@localhost opt]# source /etc/profile

  验证Jmeter环境变量配置
  
[iyunv@localhost opt]# jmeter -v

  安装Ant
  到ant官网下载ant安装文件apache-ant-1.10.1-bin.zip
  将ant安装文件上传到Linux系统的/opt目录下
[iyunv@localhost opt]# rz

[iyunv@localhost opt]# ll

  -rw-r--r--. 1 root root   8824128 Jul  6 19:43 apache-ant-1.10.1-bin.zip
  解压缩Ant安装文件
  
[iyunv@localhost opt]# unzip apache-ant-1.10.1-bin.zip

[iyunv@localhost opt]# ll

  drwxr-xr-x. 6 root root       235 Feb  2  2017 apache-ant-1.10.1
  -rw-r--r--. 1 root root   8824128 Jul  6 19:43 apache-ant-1.10.1-bin.zip
  配置Ant环境变量
[iyunv@localhost opt]# vi /etc/profile

  按G将光标移动到文件末尾,按a进入编辑模式,在文件末尾添加以下内容
  export ANT_HOME=/opt/apache-ant-1.10.1
  export PATH=$PATH:$ANT_HOME/bin
  按ESC--:wq保存修改退出
[iyunv@localhost opt]# source /etc/profile

  验证Ant环境变量配置
[iyunv@localhost opt]# ant -version

  Apache Ant(TM) version 1.10.1 compiled on February 2 2017
  配置Jenkins Ant
  Jenkins--系统管理--全局工具配置

  点击新增Ant按钮

  去掉自动安装前的复选框
  设置Ant Name为:apache-ant-1.10.1
  设置ANT_HOME为:/opt/apache-ant-1.10.1

  点击Save按钮保存修改。
  配置报告
  将Jmeter安装目录下extras目录下的ant-jmeter-1.1.1.jar文件复制到ant安装目录下的lib目录中
[iyunv@localhost ~]# cp /opt/apache-jmeter-3.3/extras/ant-jmeter-1.1.1.jar /opt/apache-ant-1.10.1/lib/

  将本地用jmeter编辑好的测试脚本example.jmx复制到Linux上的jmeter目录下的bin目录中
[iyunv@localhost ~]# cd /opt/apache-jmeter-3.3/bin

[iyunv@localhost bin]# rz

[iyunv@localhost bin]# ll

  total 252
  -rw-r--r--. 1 root root 13740 Sep 17 19:26 ApacheJMeter.jar
  -rw-r--r--. 1 root root  1435 Sep 17 19:34 BeanShellAssertion.bshrc
  -rw-r--r--. 1 root root  2079 Sep 17 19:34 BeanShellFunction.bshrc
  -rw-r--r--. 1 root root  1232 Sep 17 19:34 BeanShellListeners.bshrc
  -rw-r--r--. 1 root root  2105 Sep 17 19:34 BeanShellSampler.bshrc
  -rw-r--r--. 1 root root  5721 Dec  8 18:09 example.jmx
  在jmeter/extras目录下执行ant命令
[iyunv@localhost bin]# cd ../extras/

[iyunv@localhost extras]# ant

  在提示BUILD SUCCESSFUL之后将extras目录下的build.xml,collapse.png,expand.png,jmeter-results-detail-report_21.xsl复制到jmeter/bin目录下
[iyunv@localhost extras]# cp build.xml collapse.png expand.png jmeter-results-detail-report_21.xsl ../bin

  修改Jmeter的bin目录下的build.xml文件
[iyunv@localhost extras]# cd ../bin

[iyunv@localhost bin]# vi build.xml

  按a进入编辑模式,在第48行左右,找到<property name="test" value="Test"/>
  修改为<property name="test" value="example"/>
  按ESC -- :wq保存修改退出
  新建一个Jenkins Item
  Jenkins--新建Item

  输入任务名称,选择自由风格的软件项目,点击确定按钮


  拖动页面到最后,找到构建节点

  点击增加构建步骤,选择Invoke Ant


  点击高级按钮
  设置Ant Version和Build File

  新增构建后操作步骤
  
  点击增加构建后操作步骤,选择Publish HTML reports

  点击增加按钮


  HTML directory to archive填build.xml所在目录
  Index page填build.xml中修改的那个名字加.html

  点击增加构建后操作步骤,添加Editable Email Notifaction


  Project Recipient List填收件人邮箱
  Content Type选择HTML(text/html)

  点击Advanced Settings--Trigger

  删除掉默认的触发器,点击Add Trigger,从下拉列表中选择Always


  删除掉Send To设置中的Developers

  保存设置,点击立即构建


  构建完成后,刷新页面,可以看到左侧多了HTML Report的选项,点击可以查看HTML 格式的报告


  到填写的收件邮箱里查看是否收到报告

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-433321-1-1.html 上篇帖子: jenkins结合docker 下篇帖子: 我的自动化测试历程 (Selenium+TestNG+Java+ReportNG+Jenkins)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表