Jenkins运行Jmeter脚本

时间:2016-02-25 11:41:08

标签: jenkins jmeter jenkins-plugins

问题是如何使用jenkins作业运行jmeter脚本。 是否有任何先决条件,如标准变量名称和所有。

我听说有不同的插件,有些可以按原样执行脚本,而其他一些插件可以从gui获取输入,也可以提供报告作为图表或图形。

另外一些帖子说首先我们需要创建ant程序,然后需要从jenkins调用它们。

如果可能,请详细说明确切的程序和合适的插件。

3 个答案:

答案 0 :(得分:1)

我使用以下两种方法:

  1. 您可以使用命令行在非GUI模式下运行Jmeter("执行Windows批处理命令"或"执行Shell"在Jenkins作业设置中构建步骤)
  2.   

    jmeter.bat -n -t path_to_your_jmx_script.jmx

    当然,您可以通过将Jmeter作为Java应用程序或shell脚本启动来执行相同的操作。

    1. 通过"调用Ant"建立步骤。 这种方法为您提供了蚂蚁的所有好处。因此,只需将jmeter包含在build.xml文件中的相应ant目标中。这是一个例子(不需要jvmarg和jmeterarg):

      <target name="test" depends="clean">
           <jmeter jmeterhome="${jmeter-home}"resultlogdir="results/jtl">
                <testplans dir="scripts" includes="*.jmx"></testplans>
                <jmeterarg value="-Jbackend=${env.Backend_Address}"/>
                <jvmarg value="-Xmx512m"/>    
                <jvmarg value="-Xdebug"/>
           </jmeter>
      </target>
      
    2. 这就是如何生成漂亮的报告:

      <target name="report" depends="test">
           <xslt classpathref="xslt.classpath"
                 basedir="results/jtl"
                 destdir="results/html"
                 includes="*.jtl"
                 style="${jmeter-home}/extras/jmeter-results-detail-report_21.xsl">
                 <param name="showData" expression="${show-data}"/>
          </xslt>    
          <copy file="${jmeter-home}/extras/expand.png" tofile="results/html/expand.png"></copy>
          <copy file="${jmeter-home}/extras/collapse.png" tofile="results/html/collapse.png"></copy>
      </target>
      

      关于Jenkins插件 - 我知道(和使用)的唯一一个是Performance Plugin,它可以根据Jmeter结果将构建标记为失败/传递并生成漂亮的图形。

答案 1 :(得分:1)

该网站提供有关Jmeter + Ant + Jenkins集成的详细信息。 除了运行测试之外,您可能还有兴趣生成报告,图表和邮寄结果。

点击此处:

http://www.testautomationguru.com/jmeter-continuous-performance-testing-part2/

答案 2 :(得分:1)

Jenkins没有提供任何插件来执行JMeter测试,由你决定如何启动它,选择是:

因此,您需要添加一个构建步骤,该步骤将使用上述方法之一触发JMeter测试执行。您还可以添加Performance Plugin作为构建后操作,以便能够可视化性能趋势并设置通过和失败标准。

有关详细演练,请参阅Continuous Integration 101: How to Run JMeter With Jenkins文章。