jmeter + ant + Jenkins継続的インテグレーション自動テスト

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>

おすすめ

転載: blog.csdn.net/test_number1/article/details/113860639