如何将性能测试与持续集成连接起来

发表于:2017-11-29 10:37

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Yuan_Jie    来源:51Testing软件测试网采编

  目的
  ●将性能测试持续集成挂接起来
  ●性能测试: JMeter
  ●持续集成: Jenkins
  JMeter
  ●下载JMeter,官网: http://jmeter.apache.org/
  ●创建测试计划: 访问 http://www.cnblog.com ,验证Response的返回值中存在cnblog
  Thread组配制
  Http请求
  Response断言
  ●使用GUI的JMeter查看运行测试结果
  GUI JMeter测试结果
  使用命令行执行测试
  -J 指定生成的结果格式为xml,-t 指定测试文件,-l 测试结果
  java -jar ApacheJMeter.jar -Jjmeter.save.saveservice.output_format=xml -n -t /Users/yjshi/Downloads/TestPlan.jmx -l TestPlan.jtl
  结果
  Writing log file to: /Users/yjshi/Downloads/apache-jmeter-3.0/bin/jmeter.log
  Creating summariser <summary>
  Created the tree successfully using /Users/yjshi/Downloads/TestPlan.jmx
  Starting the test @ Thu Aug 04 18:41:43 CST 2016 (1470307303526)
  Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
  summary =     10 in 00:00:01 =    8.3/s Avg:   333 Min:   183 Max:   539 Err:     0 (0.00%)
  Tidying up ...    @ Thu Aug 04 18:41:44 CST 2016 (1470307304767)
  ... end of run
  ●JMeter已经可以通过命令行来执行
  Jenkins
  配制JMeter
  ●下载Jenkins包,官网: https://jenkins.io/
  ●启动Jenkins
  Running from: /Users/yjshi/Downloads/All/Software/jenkins/jenkins.war
  webroot: $user.home/.jenkins
  Aug 04, 2016 5:52:13 PM winstone.Logger logInternal
  INFO: Beginning extraction from war file
  Aug 04, 2016 5:52:13 PM org.eclipse.jetty.util.log.JavaUtilLog info
  INFO: jetty-winstone-2.9
  Aug 04, 2016 5:52:19 PM org.eclipse.jetty.util.log.JavaUtilLog info
  INFO: NO JSP Support for , did not find org.apache.jasper.servlet.JspServlet
  Jenkins home directory: /Users/yjshi/.jenkins found at: $user.home/.jenkins
  Aug 04, 2016 5:52:26 PM org.eclipse.jetty.util.log.JavaUtilLog info
  INFO: Started SelectChannelConnector@0.0.0.0:8080
  Aug 04, 2016 5:52:26 PM winstone.Logger logInternal
  INFO: Winstone Servlet Engine v2.0 running: controlPort=disabled
  Aug 04, 2016 5:52:26 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Started initialization
  Aug 04, 2016 5:52:32 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Listed all plugins
  Aug 04, 2016 5:52:32 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Prepared all plugins
  Aug 04, 2016 5:52:32 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Started all plugins
  Aug 04, 2016 5:52:32 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Augmented all extensions
  Aug 04, 2016 5:52:35 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Loaded all jobs
  Aug 04, 2016 5:52:35 PM hudson.model.AsyncPeriodicWork$1 run
  INFO: Started Download metadata
  Aug 04, 2016 5:52:35 PM org.jenkinsci.main.modules.sshd.SSHD start
  INFO: Started SSHD at port 54488
  Aug 04, 2016 5:52:35 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Completed initialization
  Aug 04, 2016 5:52:35 PM hudson.UDPBroadcastThread run
  INFO: Cannot listen to UDP port 33,848, skipping: java.net.SocketException: Can't assign requested address
  Aug 04, 2016 5:52:35 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Started initialization
  Aug 04, 2016 5:52:35 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Listed all plugins
  Aug 04, 2016 5:52:35 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Prepared all plugins
  Aug 04, 2016 5:52:35 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Started all plugins
  Aug 04, 2016 5:52:35 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Augmented all extensions
  Aug 04, 2016 5:52:35 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Loaded all jobs
  Aug 04, 2016 5:52:35 PM jenkins.InitReactorRunner$1 onAttained
  INFO: Completed initialization
  Aug 04, 2016 5:52:35 PM hudson.WebAppMain$3 run
  INFO: Jenkins is fully up and running
  ●安装Performance plugin插件: Performance Plugin
  Performance plugin
  ●配制Jenkins中的JOB
  echo 'begin testing'
  java -jar /Users/yjshi/Downloads/apache-jmeter-3.0/bin/ApacheJMeter.jar -Jjmeter.save.saveservice.output_format=xml -n -t /Users/yjshi/Downloads/TestPlan.jmx -l TestPlan.jtl
  echo 'testing end'
  ●运行JOB,查看结果
  Jenkins执行结果
  ●在JOB的workspace下会生成两个文件jmeter.log TestPlan.jtl
  jmeter.log TestPlan.jtl
  配制运行报告
  ●添加测试报告
  报告读取
  ●查看统计结果
  统计结果
  后续
  ●可将jmx文件存放到仓库中,便于维护和管理
  ●将JOB添加到版本构建中,在版本构建完成后,自动执行性能,确保每次的版本Build均满足性能需求
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号