環境の準備
-
ジェンキンスをインストールし、プラグインをインストールアリ
JavaのJDK環境とインストール
JMeterのインストールと準備スクリプト
-
アリインストール:
ダウンロードAntのアーカイブと抽出液を
環境変数を設定して、システム環境変数に新しい変数は、ANT_HOMEは、変数名、変数のインストールパスのANTの値を入力してください:Dのように:\ Antの\のapache-ANT-1.9.14
PATH環境変数には、追加する:%ANT_HOME%\ binが。
-
ジェンキンスのグローバル変数に設定します。
名前を命名するためのAntオプションバー、通常はアリで
チェックする必要がなくなり、自動的にインストールするには、デフォルトでチェック
追加ANT_HOME値入力環境変数:例:D:\ Antの\のApache-ANT-1.9.14
[保存]
-
JMeterの\ビンに、ファイルjmeter.propertiesを開きます
変更jmeter.save.saveservice.output_format = XML(メッセージ送信を投稿しやすいです)
-
インストールのlibディレクトリのパスANTにアリ - JMeterの-1.1.1.jarのパッケージの下にコピーエキストラのJMeter
検証:入力フォルダエクストラJMeterのCMDファイルant.bat -fileのbuild.xml -Dtest =テストで
ビュー\ apacheの-JMeterの-3。\ Test.jtlビルド成功へのextrasディレクトリ、Test.htmlというファイル、もしそうであれば、下に表示されます
-
ジェンキンスは、無料のタスクを作成します。
ビルド追加ビルドステップで呼び出しのAntを追加
Antのバージョンで(ANTを選択し、ここで、上記で作成したANT)を選択するドロップダウングローバル設定で作成されました
例えば高度、ビルドファイルフィルbuild.xmlファイルの場所を、クリックしてください:D:\ JMeterの\のapache-のJMeter-5.2.1 \エクストラ\ build.xmlを
-
build.xml設定ファイル:
<?xml version="1.0" encoding="UTF-8"?>
<!--name名称可自己定义,表示工程名称,default表示默认的情况下为all,从20行代码可以看出,又包含test,report,mail,basedir表示当前目录-->
<project name="接口性能监控" default="all" basedir=".">
<tstamp>
<!--当前时间戳-->
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<property name="encoding" value="UTF-8" />
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="E:\202002-03\jmeter8期\apache-jmeter-5.1.1\" />
<!--value为报告名称,可自行修改-->
<property name="report.title" value="易捷支付性能监控"/>
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="${jmeter.home}\worklogs\jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="${jmeter.home}\worklogs\html" />
<!-- 生成的报告的前缀-->
<property name="ReportName" value="PerformReport" />
<property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}\${ReportName}${time}.jtl" />
<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}\${ReportName}${time}.html" />
<target name="all">
<antcall target="test" />
<antcall target="report" />
<antcall target="mail" />
</target>
<target name="test">
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
<!-- 声明要运行的脚本"*.jmx"指包含此目录下的所有jmeter脚本-->
<testplans dir="${jmeter.home}\bin\script" includes="jpgc_design.jmx" />
<testplans dir="${jmeter.home}\bin\script" includes="jpgc_design2.jmx" />
<property name="jmeter.save.saveservice.output_format" value="xml"/>
</jmeter>
</target>
<path id="xslt.classpath">
<fileset dir="${jmeter.home}\lib" includes="xalan*.jar"/>
<fileset dir="${jmeter.home}\lib" includes="serializer*.jar"/>
</path>
<target name="report">
<tstamp> <format property="report.datestamp" pattern="yyyy/MM/dd HH:mm" /></tstamp>
<!-- meter-results-detail-report_21.xsl为报告模板,可自定义,提供jmeter-results-detail-report_21.xsl,
jmeter-results-report_21.xsl选择 -->
<xslt
classpathref="xslt.classpath"
force="true"
in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}"
style="${jmeter.home}\extras\jmeter-results-detail-report_21.xsl">
<param name="showData" expression="${show-data}"/>
<param name="dateReport" expression="${report.datestamp}"/>
<param name="titleReport" expression="${report.title}:${report.datestamp}"/>
</xslt>
<!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}\extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
<!-- 发送方邮箱,需开通SMTP服务 -->
<property name="mail_from" value="[email protected]" />
<!-- value填写的是授权码 -->
<property name="password" value="dedasdafewrdf" />
<!--mail_to:发送列表,value表示接收方邮箱,多个之间逗号间隔 -->
<property name="mail_to" value="[email protected]" />
<!-- 端口信息 -->
<property name="mailport" value="25" />
<!--邮箱需要开通smtp服务-->
<property name="mailhost" value="smtp.163.com" />
<target name="mail">
<loadfile property="report" srcFile="${jmeter.result.htmlName}" encoding="${encoding}" />
<mail from="${mail_from}" tolist="${mail_to}" mailport="${mailport}" mailhost="${mailhost}" user="${mail_from}" password="${password}" subject="TestReport-${ant.project.name}" messagemimetype="text/html">
<message>
本轮构建的结果如下:
${report}
</message>
</mail>
<delete file="${jmeter.result.htmlName}" />
</target>
</project>
そして、あなたはジェンキンスでタスクを構築することができます。