zoukankan      html  css  js  c++  java
  • JMeter工具基础知识篇-使用命令行生成html报告

      背景说明: JMeter执行方式有2种,一种是GUI模式,一种是NO-GUI模式。GUI模式就是界面模式,NO-GUI模式就是命令行模式。界面模式主要用来编写和调试脚本用的,项目的真正执行最好是采用命令行模式,因为采用命令行模式可以和持续集成或者其它框架进行对接,做成自动化回归测试平台。我们可以拿jmeter界面当做学习工具或者当做脚本开发和调试工具,如果采用界面模式做正式执行,那么这样的过程一定不是自动化的过程,是半手工半自动化的过程,这样我们就成为不了一个真正的接口自动化测试人员。命令行执行模式,具有更加灵活和强大的功能,能完成更多的高级用法。在真正的项目执行过程中,无论是接口自动化测试,还是接口性能测试,我个人采用的全都是命令行执行模式。

    今天要讲的是如何将一个用界面编写好的脚本,使用命令行去执行,然后再使用命令行将生成的执行日志文件转化为html报告。这些功能,都是JMeter3.0及更高版本自带的功能,使用起来特别方便,而且报告也非常直观,图形化报表也很美观。

    个人建议:我们在学习工具的时候,从简单入手、从界面入手没有错误,但是学完了简单的用法,依然需要向更高级的功能拓展,否则达不到真正理解和精通一款工具的目的。是否会灵活熟练使用命令行模式去执行jmeter任务,是用来判断你熟悉jmeter的考核点之一,也是用来判断你使用jmeter所处的阶段:个人学习式、小作坊式、正规项目级模式。

    命令行详解:

    以下操作是在windows上演示的,windows和linux上唯一的区别在于,windows的执行入口为jmeter.bat,linux上的执行入口为jmeter.sh,命令行本身的属性和参数都是一致的,并没有其它任何差异,因为jmeter本身是一个100%纯java编写的程序,是跨平台的。

    下面是我保存脚本的目录结构,大家可以参考我前面编写的《JMeter工具基础知识篇-工程目录结构及命名规范》,如何创建规范点的工程目录名称。

    接下来,我使用命令行,分两步将报告生成出来。第一步是使用命令行执行脚本并生成日志文件,第二步是使用命令行将生成的日志文件转化为html报告。

    【jmeter命令行执行】

    执行命令如下:

    jmeter -n -t D:SvnProject est01firstJmeterProjectscriptaidu_test.jmx -l D:SvnProject est01firstJmeterProject esultjtlaidu_test-debug-2-0-10-001.jtl -j D:SvnProject est01firstJmeterProject esultjtlaidu_test-debug-2-0-10-001.log

    执行过程如下:

    执行后生成的日志文件如下:

     

    【jmeter命令行生成报告】

    报告生成命令如下:

    jmeter -g D:SvnProject est01firstJmeterProject esultjtlaidu_test-debug-2-0-10-001.jtl -o D:SvnProject est01firstJmeterProject esulthtml

    执行过程如下:

    执行后生成的报告如下:

    打开index.html就可以查看报告了

     

    【命令行使用特别说明

    1、 命令行执行时生成的日志文件的格式一定要设置为csv格式,请参考jmeter.properties文件中的属性:jmeter.save.saveservice.output_format=csv

    如果执行的日志不是csv格式,如果被设置为了xml格式,转化报告的时候,会报以下错误:

    2、 报告生成命令行设置的输出路径是一个空目录

    我碰到很多人在这儿掉坑里了,这句话包含两层意思:

    1)、这个路径是一个目录的全路径,注意,是目录的路径,不是文件路径;

    2)、这个目录是个空目录,也就是说不包括任何文件和子目录。如果此目录不为空,生成的时候会报以下错误:

    查看日志文件可以清楚的知道错误提示信息:

  • 相关阅读:
    玩转Bootstrap(JS插件篇)-第1章 模态弹出框 :1-4 模态弹出框--结构分析
    玩转Bootstrap(JS插件篇)-第1章 模态弹出框 :1-3 模态弹出框
    玩转Bootstrap(JS插件篇)-第1章 模态弹出框 :1-2 动画过渡
    玩转Bootstrap(JS插件篇)-第1章 模态弹出框 :1-1导入JavaScript插件
    SpringMVC中的 JSR 303 数据校验框架说明
    对JSON格式的城市按照拼音首字母排序
    Urozero Autumn 2016. BAPC 2016
    BZOJ2596 : [Wc2007]疯狂赛车
    BZOJ3253 : 改编
    XVII Open Cup named after E.V. Pankratiev. GP of Moscow Workshops
  • 原文地址:https://www.cnblogs.com/haibing1230/p/8359826.html
Copyright © 2011-2022 走看看