zoukankan      html  css  js  c++  java
  • jmeter自动生成测绘报告并发送邮件

    步骤:

      1.安装ant,添加到环境变量(windows是将bin目录添加到path。cmd命令输入 ant -v 查看版本号)

      (mac:brew install ant

          ant –version)

      ant的作用是打包成一个.war包

      2.jmeter的目录 ....你的目录/apache-jmeter-4.0/extras下找到ant-jmeter-1.1.1.jar,把它copy到ant的lib目录下。

      (windows为   apache-ant-1.10.0/lib , mac为:/usr/local/Cellar/ant/1.10.4/libexec/lib

      3.打开jmeter的bin目录下的jmeter.properties文件作如下修改:

      4.build.xml文件:在“你的目录/apache-jmeter-4.0”下新建TestSuite文件夹。

    然后在testSuite里面按照图片上面的新建文件夹。将jmeter测试脚本放入script里面

    a.执行测试脚本

    b.生成测试报告

    c.自动发送邮件

    <?xml version="1.0" encoding="UTF8"?>

    <project name="ant-jmeter-test" default="run" basedir=".">

    <property name="jmeterPath" value="你的目录apache-jmeter-4.0"/>   <!--jmeter的路径-->
    <property name="mailhost" value="smtp.qq.com"/>  <!--邮箱的协议-->
    <property name="username" value="*********@qq.com"/>  <!--邮箱账号-->
    <property name="password" value="*********"/><!--邮箱密码-->这个是开启smtp服务的时候,系统给的密码。
    <property name="mailfrom" value="**********@qq.com"/><!--由谁来发送-->
    <property name="mail_to" value="******@hnair.com"/> <!--发送给谁,多个人用英文逗号分割-->
    <property name="mailsubject" value="XX系统接口自动化测试报告"/><!--邮件主题-->
    <property name="mail_port" value="587"/><!--端口号-->
    <property name="message" value="Hi!请查收下,这是**后台系统接口自动化测试报告,如有任何疑问,请联系我,谢谢!"/><!--邮箱内容-->


    <tstamp>
    <format property="time" pattern="yyyyMMddhhmm" />
    </tstamp>
    <property name="jmeter.home" value="${jmeterPath}" />
    <property name="jmeter.result.jtl.dir" value="${jmeterPath}TestSuite eportjtl" /><!--放性能测试报告的地址-->
    <property name="jmeter.result.html.dir" value="${jmeterPath}TestSuite eporthtml" /><!--放测试报告的地址-->
    <property name="htmlReportNameSummary" value="TestReport" />
    <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${htmlReportNameSummary}${time}.jtl" />
    <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${htmlReportNameSummary}${time}.html" />


    <target name="run">
    <antcall target="test" />
    <antcall target="report" />
    <antcall target="sendEmail" />
    </target>

    <!--执行接口测试-->
    <target name="test">
    <echo>执行接口自动化测试用例</echo>
    <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
    <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
    <!--要执行的测试脚本-->
    <testplans dir="${jmeterPath}TestSuitescript" includes="cookie实战.jmx" /><!--写入要测试的脚本-->
    <property name="jmeter.save.saveservice.output_format" value="xml"/>
    </jmeter>
    </target>

    <!--解决报告中NAN字段显示问题-->
    <path id="xslt.classpath">
    <fileset dir="${jmeter.home}/lib" includes="xalan-2.7.2.jar"/>
    <fileset dir="${jmeter.home}/lib" includes="serializer-2.7.2.jar"/>
    </path>

    <!--生成HTML测试报告-->
    <target name="report">
    <echo>生成接口自动化测试报告</echo>
    <xslt classpathref="xslt.classpath"
    force="true"
    in="${jmeter.result.jtlName}" out="${jmeter.result.htmlName}"
    style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl" /><!--生成的模版-这是详细的,指定在extras-->
    <!--<param name="showData" expression="${show-data}"/>-->
    <!--<param name="titleReport" expression="${ReportName}${time}"/>-->
    <!--<param name="dateReport" expression="${ReportName}${time}"/>-->

    <!--复制图片-->
    <copy todir="${jmeter.result.html.dir}">
    <fileset dir="${jmeter.home}/extras">
    <include name="collapse.png" />
    <include name="expand.png" />
    </fileset>
    </copy>
    </target>

    <!--自动发送邮件-->
    <target name="sendEmail">
    <echo>发送自动化测试报告</echo>
    <mail mailhost="${mailhost}"
    ssl="ture"
    user="${username}"
    password="${password}"
    mailport="${mail_port}"
    subject="${mailsubject}"
    messagemimetype="text/html"
    tolist="${mail_to}">
    <from address="${mailfrom}" />

    <attachments>
    <!--${jmeter.home}/TestCase/report/html/-->
    <fileset dir="${jmeter.result.html.dir}">
    <include name="${htmlReportNameSummary}${time}.html"/>
    <include name="collapse.png" />
    <include name="expand.png" />
    </fileset>
    </attachments>

    <message>
    ${message}
    </message>
    </mail>
    </target>

    </project>

      5.执行命令,将三个包先放入放入ant的lib下,activation.jar,commons-email-1.2.jar,mail.jar

    执行以下的两个目录

    cd 你的目录/apache-jmeter-4.0/TestSuite

    ant

     

    如果出现以下错误:

     

    解决方法:打开腾讯邮箱,点击》设置----账户----POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务下面的POP3/SMTP服务 (如何使用 Foxmail 等软件收发邮件?)       已开启 |   关闭         发信息开启,然后会收到一个验证码,将验证码填入password中

    6.可以在邮件里面收到报告,或者可以在report/html中查看报告

  • 相关阅读:
    第二阶段冲刺第九天
    第二阶段冲刺第八天
    第二阶段冲刺第七天
    第二阶段冲刺第六天
    第二阶段冲刺第五天
    第二阶段冲刺第四天
    第二阶段冲刺第三天
    java-小组项目-需求视频
    绩效评估方法
    各组对我们的意见汇总
  • 原文地址:https://www.cnblogs.com/peiminer/p/9258032.html
Copyright © 2011-2022 走看看