如何將性能測試與持續集成連接起來

發表于:2017-11-27來源:未知作者:Yuan_Jie點擊數: 標簽:性能測試持續集成
如何將性能測試與持續集成連接起來

目的

JMeter

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執行結果
  • JOBworkspace下會生成兩個文件jmeter.log TestPlan.jtl

jmeter.log TestPlan.jtl

配制運行報告

  • 添加測試報告

報告讀取
  • 查看統計結果

統計結果

后續

  • 可將jmx文件存放到倉庫中,便于維護和管理
  • JOB添加到版本構建中,在版本構建完成后,自動執行性能,確保每次的版本Build均滿足性能需求

原文轉自:http://www.jianshu.com/p/edc0d171a6d1

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97