1.環境の準備
jdk、jmeter、jenkins、ant Jmeter
ダウンロードアドレス:http://jmeter.apache.org/download_jmeter.cgi
Jenkinsダウンロードアドレス:https ://www.jenkins.io/download
antダウンロードアドレス:http:/ /ant.apache.org/bindownload.cgi
JDKダウンロードアドレス:htps:
//www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html jmeter環境変数の構成
1.新しいシステム変数JMETER_HOME、値はインストールパス
2です。システム変数JAVA_HOMEが追加され、値はインストールパス
3です。システム変数ANT_HOMEが追加され、値はインストールパスです
。4。システム変数CLASSPATHを編集し、値が追加されます。 JMETER_HOME%\ lib \ ext \ ApacheJMeter_core.jar;%JMETER_HOME%\ lib \ jorphan.jar;%JMETER_HOME%\ lib \ logkit-2.0.jar;。;%JAVA_HOME%\ lib \ dt.jar;%JAVA_HOME%\ lib \ tools.jar;%ANT_HOME%\ lib
5. PATHを編集し、%JAVA_HOME%\ bin;%JAVA_HOME%\ jre \ bin;%ANT_HOME%\ bin;%ANT_HOME%\ bin
2. Jmeter + ant統合
1を追加します。 antをダウンロードしてインストール
し、コマンドラインウィンドウにantを入力するようにシステム変数を構成します-vインストールが成功したかどうかを確認します
2.ファイル構成
2.1。構成ライブラリファイル
jmeterextrasディレクトリのant-jmeter-1.1.1.jarファイルをantインストールディレクトリのlibフォルダにコピーします。2.2。ant
コンパイルファイルbuild.xml(newbuild。xml)を構成します。ファイル)
スクリプトストレージディレクトリを任意に作成します:E:\ jmeter \ AutoTest。レポートストレージディレクトリのレポート
コードは次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<project name="JmeterTest" default="run" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="D:\apache-jmeter-5.4" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="D:\jenkins\workspace\report\jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="D:\jenkins\workspace\report\html" />
<!-- 生成的报告的前缀 -->
<property name="ReportName" value="TestReport" />
<property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl" />
<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.html" />
<!-- 接收测试报告的邮箱 -->
<property name="mail_to" value="[email protected]" />
<!-- 电脑地址 -->
<property name="ComputerName" value="jkqsh-l0285" />
<target name="run">
<antcall target="test" />
<antcall target="report" />
</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="D:\jenkins\workspace\接口测试" includes="*.jmx" />
</jmeter>
</target>
<target name="report">
<tstamp> <format property="report.datestamp" pattern="yyyy/MM/dd HH:mm" /></tstamp>
<xslt
classpathref="xslt.classpath"
force="true"
in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}"
style="${
jmeter.home}/extras/jmeter.results.shanhe.me.xsl" />
<!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
<path id="xslt.classpath">
<fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
<fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
</path>
</project>
2.3
次のjmeterインストールディレクトリ/ binディレクトリに設定されたjmeter.propertiseドキュメント、jmeter.propertiseはドキュメントを開いて編集し、レポート出力形式を変更しますxmljmeter
変更されたxml = jmeter.save.saveservice.output_format
.3、設定され、テストを実行します構築
の保存に以前のJMeterスクリプトを、テストスクリプトと同じディレクトリ内のbuild.xml設定ファイルを配置します。
CMDは、スクリプトディレクトリに入り:E:\ apacheの-のJMeter-2.13 \自動テスト。(つまり、build.xmlが配置されているディレクトリ)最初のビルドが失敗し、エラーが報告されたときに
antを入力
します。
このエラーは解決されました。理由は、antの2つのjarパッケージが指定されたパスに構成されておらず、 build.xmlに追加される次のコード
<path id="xslt.classpath">
<fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
<fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
</path>
3.1。テストレポートの最適化
テンプレートのダウンロード:http:
//shanhe.me/download.php?file = jmeter.results.shanhe.me.xsl 3.1.1jmeterのextrasディレクトリにコピーします
3.1.2テスト出力レポートを設定します出力する内容:jmeterのbinディレクトリのjmeter.propertiesで、出力する必要のある内容をtrueに
設定し、前のコメント記号を削除します。#3.1.3ビルドファイルのレポートテンプレートを最適化されたテンプレートjmeterに設定します。 -results-shanhe-me .xsl
3.1.4 antを使用してテストを再度ビルドし、最適化されたテストレポートを表示します
。3。jmeter+ ant + Jenkinsの継続的な統合
1.公式Webサイトのダウンロードアドレス:https://www.jenkins.io / download /
ワンクリックインストールとローカルアドレスへのアクセス:http:// localhost:8080 /
ユーザーを追加し、ユーザーページの[設定]をクリックすると、パスワードを変更した後にパスワードが有効になります。
プラグインをインストールします。HTML Publisher、Ant In Workspace、Email Extension Template
2.新しいビューを作成し、[OK]をクリックして保存し
ます。3 。[ビューに新しいタスクを作成します。]で
タスク名を入力し、フリースタイルのソフトウェアプロジェクトを選択して、[OK]をクリックします
。4。構成ビルド
5.レポートの構成
このプラグインは、htmlファイルの生成には役立ちません。ワークスペースの下の対応するプロジェクトによって生成されたファイルを、対応するジョブディレクトリの下にコピーするだけです。
アーカイブするHTMLディレクトリ:相対パスが使用されます。これは、現在のjenkinsの対応するjobsディレクトリの
インデックスページに対応します:jenkinsに統合されたテストレポートの名前。
レポートタイトル:Jenkinsの下に表示される名前。表示する
場合Jenkinsで直接レポートを作成する必要があります。毎回固定のレポート名を生成する必要があります。新しいレポート名は古いレポート名を上書きします。つまり、htmlレポートにタイムスタンプを追加せず、build.xmlのタイムスタンプを削除し
てテストレポートを生成します。
6.
antビルドプロジェクトのビルドを開始し、デフォルトで実行します。これはJenkinsのワークスペースの下にあるスクリプトです。ワークスペースの下にスクリプトがない場合、ビルドはエラーを報告します
。6.1Jenkins-システム管理を介してJenkinsディレクトリを表示します。-システム設定-ホームディレクトリ
6.2ワークスペースパスを変更します
6.2.1。Jenkinsインストールルートディレクトリを見つけ
てconfig.xmlファイルを探します6.2.2config.xmlファイルでworkspaceDirキーワードを探し、カスタムのアドレスを置き換えますデフォルトアドレスを持つワークスペースのルートディレクトリ。
6.2.3を再起動し、設定ファイルのテイク効果を作る
。ジェンキンスは、再読み込み構成にジェンキンスコマンドを実行するために、MSIのニーズを使用してインストールし、ジェンキンス再起動するようにシステム管理に読み取り設定]をクリックし
6.3、ビルド時間は、「ant.bat」が内部または外部コマンドではなく、実行可能なプログラムでもないことを報告しました。6.3.1
システム管理の入力-グローバルツール構成
6.3.2タスク構成を入力して再構成します
プロジェクトでAnt6.4を呼び出しますホームページで、[今すぐビルド
6.5 ]をクリックしてテストレポートの保存パスを開き、生成されたレポートを表示します
4.各ビルド後にレポートをメールボックスに送信し
ます1.システム管理を入力します-システム設定、拡張電子メール通知を構成します-
テストメールを送信して「詳細」テスト構成
2.プロジェクト構成を入力します-ビルド後を追加します
メールコンテンツでの操作デフォルトコンテンツメールテンプレートを添付
<!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">
<h3>以下是Jenkins自动发送的邮件,请勿回复!</h3>
<div>
<table width="95%" cellpadding="0" cellspacing="0"
style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
<tr>
<th><br />
<h2>构建信息</h2>
</th>
</tr>
<tr>
<td>
<ul>
<li>项目名称 : ${PROJECT_NAME}</li><br />
<li>构建日志 :<a href="${PROJECT_URL}${BUILD_NUMBER}/allure">${PROJECT_URL}${BUILD_NUMBER}/allure</a></li><br />
<li>触发原因: ${CAUSE}</li><br />
<li>项目 Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li><br />
</ul>
</td>
</tr>
</table>
</div>
<div>
<table>
<tr>
<th><br />
<h2>测试报告</h2>
</th>
</tr>
<tr>
<td>
<li>测试报告: <a href="${PROJECT_URL}/HTML_20Report">${PROJECT_URL}/HTML_20Report</a></li>
</td>
</tr>
</table>
</div>
</body>
</html>