在GUI模式下执行JMeter测试时,我们可以通过添加View Results Tree组件来查看JMeter请求的各类详情。那如果在正式测试场景中,当我们采用NON GUI模式时,遇到了断言或其他错误,想查看一下具体发生了什么什么,应该怎么处理呢?

比如下面这个简单的脚本,我们使用了Response Assertion断言来判断响应报文里面是否有name="searchBtn1"。

当时用NON GUI模式运行时,如果有错误,那最终的报告中会呈现类似如下的记录,仅仅是告诉我们断言检查没有找到,至于出现错误时的请求和返回具体什么就不清楚了。

此时如果想查看出现错误时的具体上送请求和返回报文,使用PostProcessor来替代ResponseAssertion。Groovy代码如下:

 def responseString = prev.getResponseDataAsString();
def responseCheck = responseString =~ /name="searchBtn1"/
​if (responseCheck.find())
{
prev.setSuccessful(true);
}else{
def samplerData = prev.getSamplerData();
log.info("Error, samplerData: "+samplerData);
log.info("Error, responseString: "+responseString);
prev.setSuccessful(false);
}

其中prev.getResponseDataAsString()得到服务器的返回报文,根据返回报文的情况,使用prev.setSuccessful设置取样器的成功与否,然后如果没有找到检查点,则将请求prev.getSamplerData()和返回报文同时记录到日志中,并设置prev.setSuccessful为false。

此时,我们需要把响应断言禁用,只保留JSR223后置处理器,保存后脚本的结构如下

这个时候,我们再使用NONGUI模式执行测试,如果出现错误,检查压力发起机的jmeter_server.log日志,里面记录的SamplerData就是发送的请求,responseString就是服务器的响应。根据这些就可以对错误进行一个基本的判断,是上送报文的问题还是服务器在大压力下出现了返回错误等等。

在这欢迎大家关注我的个人微信号,测试杂货铺,微信公众号搜索就可以,哈哈。

JMeter采用NON GUI模式时如何记录并查看错误的更多相关文章

  1. 性能测试--Jmeter的Non GUI模式、集群

    Jmeter的Non GUI模式.集群 一.Non GUI模式 1.一般情况下在NonGUI模式下运行jmeter,有两个好处: 节省系统资源,能够产生更大的负载 可以通过命令行参数对测试场景进行更精 ...

  2. Jmeter之非GUI模式(命令行)执行

    在使用Jmeter进行性能测试时,建议使用非GUI模式执行. 命令行启动 1.进入jmeter安装的bin目录 2.执行Jmeter命令 如下: (1.jmeter.bat -n -t E:\apac ...

  3. jmeter之-非GUI模式&登录实战

    1.执行测试脚本 jmeter -n -t JMeter分布式测试示例.jmx 2.指定结果文件及日志路径 jmeter -n -t JMeter分布式测试示例.jmx -l report\01-re ...

  4. Jmeter(非GUI模式)教程

    前言 使用非 GUI 模式,即命令行模式运行 JMeter 测试脚本能够大大缩减所需要的系统资源.优点如下:1.节约系统资源:无需启动界面,节约系统资源 2.便捷快速:仅需启动命令行,输入命令便可执行 ...

  5. Jmeter使用非 GUI 模式,即命令行模式运行实例讲

    转载:http://www.cnblogs.com/leeboke/p/5238269.html 参考资料:https://girliemangalo.wordpress.com/2009/10/29 ...

  6. 『动善时』JMeter基础 — 55、JMeter非GUI模式运行

    目录 1.JMeter的非GUI模式说明 2.为什么使用非GUI模式运行JMeter 3.怎样使用非GUI模式运行JMeter (1)非GUI模式运行JMeter步骤 (2)其它参数说明 4.CLI模 ...

  7. 『动善时』JMeter基础 — 55、使用非GUI模式运行JMeter(命令行模式)

    目录 1.JMeter的非GUI模式说明 2.为什么使用非GUI模式运行JMeter 3.使用非GUI模式运行JMeter (1)非GUI模式运行JMeter步骤 (2)其它参数说明 4.CLI模式运 ...

  8. 使用非 GUI 模式运行 JMeter 压力测试

    使用非 GUI 模式,即命令行模式运行 JMeter 测试脚本能够大大缩减所需要的系统资源.使用命令jmeter -n -t <testplan filename> -l <list ...

  9. 非GUI模式下运行JMeter和远程启动JMeter

    JMeter是一款非常不错的免费开源压力测试工具,越来越多的公司在使用.不过,在使用过程中可能会存在一些问题,比如:GUI模式非常消耗资源,单个客户端测试无法达到目标压力.而使用非 GUI 模式,即命 ...

随机推荐

  1. Windows 常识大全【all】

    解决电脑卡顿问题 电脑常见技巧大全 电脑运行命令CMD集锦 开启Windows 7系统的“上帝模式” Win7下设置护眼的电脑豆沙绿界面 零基础如何组装电脑?装机之家手把手教您电脑组装教程图解 [Ex ...

  2. 设置泛域名和设置IIS下面不同网站通过不同域名公用80端口的操作指引

    原文链接: http://www.lookdaima.com/WebForms/WebPages/Blanks/Pm/Docs/DocItemDetail.aspx?id=4be204ca-249b- ...

  3. 第 14 章 结构和其他数据形式(伸缩型数组成员C99)

    伸缩型数组成员C99 声明一个伸缩型数组成员的规则: 1.伸缩型数组成员必须是结构的最后一个成员: 2.结构中必须至少有一个成员: 3.伸缩数组的方括号是空的. 示例 struct flex { in ...

  4. 前端aes解密实战小结

    很多人对于AES加密并不是很了解,导致互相之间进行加密解密困难. 本文用简单的方式来介绍AES在使用上需要的知识,而不涉及内部算法.最后给出例子来帮助理解AES加密解密的使用方法. AES的麻烦 相比 ...

  5. python第二十九课——文件读写(写数据的操作)

    演示写数据的操作: 结论:往文件中写入数据,如果文件不存在,先创建文件,再写入内容 #1.打开文件 fw=open(r'd.txt','w',encoding='utf-8') #2.写数据操作 fw ...

  6. vagrant特性——基于docker开发环境(docker和vagrant的结合)-4-简单例子-有问题

    运行一个十分简单的例子: Vagrant.configure() do |config| config.vm.provider "docker" do |d| d.image = ...

  7. java字符串利用dom4j转 xml 且遍历

    1.因为转换的格式不是标准格式,所以有时候获得xml根目录后rootElement.attributes() 取不到想要的属性 所以需要通过迭代器来获取想要的值 public static void ...

  8. tomcat访问manager报404;server.xml中配置了Context path

    <Context path="" docBase="crm" debug="0" reloadable="true" ...

  9. 数据同步canal服务端介绍

    1.下载安装包 canal&github的地址,最权威的学习canal相关知识的地方 https://github.com/alibaba/canal 在下面的wiki列表中找到AdminGu ...

  10. Elasticsearch学习笔记2

    Elasticsearch is a search engine based on Lucene library.  It provides a distributed, multitenant-ca ...