JMeter 结果处理常见问题

1. 前言

2. 结果处理常见问题

 

  

1. 前言

工作中用 jmeter 请求一个接口对谈得上会 jmeter 的人似乎都是可以做出来的,但是实际难点是参数化,结果的断言,结果的汇总等。本文将针对结果过滤有效性的情况展开分析。

示例场景:一个接口需要对入参1000多个数据做测试,且需要对结果中断言失败的情况处理。
 
1)在察看结果树中只看失败情况
查看结果树的数据刷的哗哗的,其实真正测试中可能失败的比较少,刷刷的难以抓住,而且这个树似乎放不上1000多个数据,所以等执行完再看势必会少数据。
 
2)如何把日志放入文件查看
你发现问题总不能给研发数据的时候只有截图吧,要不然就去服务端日志里遨游。
 
3)cvs 文件遇到中文的尴尬
读取 cvs 的中文都是乱码。
 
4)失败请求数据的采集
断言失败如何把入参保存下来。
 
5)结果树响应数据中文乱码解决办法
 

 

2. 结果处理常见问题

1)在察看结果树中只看失败情况

 

简单的解决就是把绿色的部分都给屏蔽掉,如下图所示:

 

2)如何把日志放入文件查看

 

如果有下图提示,忽略即可。

 

下面是日志文件的样子:

 

 

日志内容受到断言的控制,当然也和日志级别有关系。

 

3)cvs 文件中文读取乱码

不管是从哪里拿到的测试数据,当保存为 cvs 时要保存为 utf-8 的数据,可以先以 txt 文件写入数据,保存的时候再去修改。

 

在对应的线程组上配置循环为永远,利用 cvs 遇到结束符停止的功能。

 

在请求中就可以参数化引用了,想在哪里用都行,就是不能跑出去这个线程组。

 

可以检查下中文的展示了:

 

4)失败请求数据的采集

以下示例是通过在断言失败时写入文件来达到目的。如果测试的数据特别多也需要对数量做统计,也是可以处理的。

注意点:jmeter 中接入的 python2 版本,jmeter 中赋值参数一定要是 u"参数值" 的 unicode 值,不然也会有编码的很多问题,所以存文件的时候要将其解码为 byte 的。

示例代码:

 

5)结果树响应数据中文乱码解决办法

jmeter 安装目录的 bin 目录下的 jmeter.properties 文件:

#sampleresult.default.encoding=ISO-8859-1

改为:

sampleresult.default.encoding=utf-8

之后重启 JMeter。

 

posted @ 2021-03-01 17:36  Juno3550  阅读(511)  评论(0编辑  收藏  举报