【jmeter + Ant + jenkins实现持续集成】

一、目前市面上接口工具

postman+Newman+git+Jenkins

jmeter+Ant+git+Jenkins

二、jmeter常用组件

必须:

测试计划

线程组

取样器

辅助:

逻辑控制

前置处理器

后置处理器

断言

定时器

配置元件

监听器

执行顺序:

配置元件》前置处理器》定时器》取样器》后置处理器》断言》监听器

作用域:

组件对于其父组件,同级组件,同级组件的子组件起作用

三、非GUI方式运行

只有非GUI(命令行)运行方式:jmeter

具体步骤如下:

先通过命令进入存放【.jmx】文件的文件夹

1.-n -t

-n 表示非GUI方式运行jmeter脚本,不能单独使用。

-t 表示用来指定jemter脚本

运行截图如下:(第一次运行的时候文件夹里最好只要有【.jmx】文件,防止其他报错)

 运行之后会在存放【.jmx】文件的文件夹下面生成一个日志文件【jmeter.log】,没什么作用

 

2.-l

-l表示指定报告文件。文件格式是jtl格式,这种格式可以通过jmeter的任意监听器查看。

 

使用jmeter监听器查看文件

 

特别注意:必须要修改配置文件jmeter.propties才能使用。 

 

 

 

修改完成后重启jmeter,让配置生效。

3.-e -o(执行前把所有非用例的文件全部删除)

-e 表示生成HTML网页格式的报告。不能单独使用,必须和-o一起使用。

-o 表示指定存放HTML网页格式报告的文件夹。文件夹必须是空目录。

配置文件jmeter.propties要改一下哈,不然无法识别

 

运行命令:

jmeter -n -t 光年.jmx -l results.jtl -e -o result

 

 

 点击,显示一个基本的html报告

 四、通过Ant和Build执行Jmeter的脚本并且生成详细报告

1.下载Ant

2.配置build.xml,用于构建报告(存放在【.jmx】文件同一目录下)。

<?xml version="1.0" encoding="UTF-8"?>

<project name="ant-jmeter-test" default="run" basedir=".">
    <tstamp>
        <format property="time" pattern="yyyyMMddhhmm" />
    </tstamp>
    <!-- 需要改成自己本地的 Jmeter 目录-->  
    <property name="jmeter.home" value="C:\apache-jmeter-5.5\apache-jmeter-5.5" />
    <!-- jmeter生成jtl格式的结果报告的路径--> 
    <property name="jmeter.result.jtl.dir" value="C:\apache-jmeter-5.5\apache-jmeter-5.5\TestCase\jtl" />
    <!-- jmeter生成html格式的结果报告的路径-->
    <property name="jmeter.result.html.dir" value="C:\apache-jmeter-5.5\apache-jmeter-5.5\TestCase\html" />
    <!-- jmeter生成html格式的结果报告的前缀-->  
    <property name="ReportName" value="接口自动化汇总接口" />
    <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl" />
    <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.html" />

    <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="C:\apache-jmeter-5.5\apache-jmeter-5.5\TestCase" includes="*.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>
        <xslt 
              classpathref="xslt.classpath"
              force="true"
              in="${jmeter.result.jtlName}"
              out="${jmeter.result.htmlName}"
              style="${jmeter
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值