一天一个关于测试知识点,5分钟内讲解你最关心的软件测试问题,今天就接着来谈谈关于软件测试中的“JMeter主要组件介绍(三)”。
12. 察看结果树
作为接口测试,做完设置操作以后,可以通过“察看结果树”和“Debug Sample”两个组件来进行调试。察看结果树通过菜单“Add->Listener->View Result Tree”添加。如图3-144所示。
图3-144察看结果树
在结果树中。
l Sample result:返回结果的基本信息,下面以一个例子。
Thread Name: Thread Group 1-1
Sample Start: 2013-06-25 16:55:15 CST
Load time: 71
Connect Time: 0
Latency: 71
Size in bytes: 367
Sent bytes:0
Headers size in bytes: 367
Body size in bytes: 0
Sample Count: 1
Error Count: 0
Data type ("text"|"bin"|""): text
Response code: 302
Response message: Found
HTTPSampleResult fields:
ContentType: text/html; charset=utf-8
DataEncoding: utf-8
l Request分别显示的是发送头信息和发送主体信息。下面也是一个例子。
● 发送主体。
GET http://127.0.0.1:8000/goods_view/
GET data:
Cookie Data:
csrftoken=NoLikcUB7LtIOp78giYXAGWXWqQBoKLWgxGrp7J7efSDfqdfxv8hSGhbrd3q8Dso; sessionid=s8blkr5y2ld82f9bqs9lpc4iwnmnkeh4
● 发送头。
Accept: image/gif,image/jpeg,image/pjpeg,application/x-ms-application,application/xaml+xml,application/x-ms-xbap,*/*
User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; Trident/7.0; rv:11.0) like Gecko
Connection: keep-alive
Accept-Language: zh-Hans-CN,zh-Hans;q=0.5
l Response Data中显示的是响应头和响应体。响应体即为返回的HTTP代码或JSON代码。下面是一个响应头的例子。
HTTP/1.1 200 OK
Date: Tue,25 Jun 2019 08:55:16 GMT
Server: WSGIServer/0.2 CPython/3.7.1
Content-Type: text/html; charset=utf-8
X-Frame-Options: SAMEORIGIN
Vary: Cookie
Content-Length: 5405
Set-Cookie: csrftoken=NoLikcUB7LtIOp78giYXAGWXWqQBoKLWgxGrp7J7efSDfqdfxv8hSGhbrd3q8Dso; expires=Tue,23 Jun 2020 08:55:16 GMT; Max-Age=31449600; Path=/; SameSite=Lax
13. Debug Sampler
在Debug Sample中可以查看测试产生数据的值。通过菜单“Add->Sample->Debug Sample”添加,如图3-145所示。
图3-145 Debug Sampler
其中。
l JMeter属性:在查看结果树中显示JMeter属性。
l JMeter变量:在查看结果树中显示JMeter变量。
l 系统属性:在查看结果树中显示系统属性。
设置完毕Debug Sampler后,在“察看结果树->Debug Sampler->Response data->Response Body”中可以查看测试结束后的所有参数的最终值,如图3-146所示。
图3-146 Debug Sampler的查看
在设置Debug Sampler的时候,后面还可以跟上特别关注的参数,如图3-147所示。相应在察看结果树中如图3-148显示参数在实际运行的值。
图3-147 在Debug Sampler名称中加入参数
图3-148 在察看结果树显示参数所对应的值
14. 事务控制器
有了以上十多个组件,基本上可以完成一个简单的接口测试了,为了达到性能测试的目的,还需要做下面的调整。
关于事务的概念,在LoadRunner中已经介绍过,通过菜单“Add->Logic Controller-> Transaction Controller”添加,界面如图3-149所示。
图3-149 事务控制器
l Generate parent sample。
● 不勾选
u 在查看结果树中会单独显示事物控制器请求。
u 在聚合报告中会同时显示其子请求和事物控制器。
● 勾选
u 在查看结果树中,子请求会显示在事物控制器下。
u 在聚合报告中,只显示事物控制器,不会显示其子请求。
l Include duration of timer and pre-post processors in generated sample:包含了定时器、前置、后置处理器等的时间。
15 同步定时器
同步定时器的作用相当于LoadRunner集合点的概念,通过菜单“Add->Timer-> Synchronizing Timer”添加,如图3-150所示。
图3-150 同步定时器
l Number of Simulated Users to Group by:并发多少个用户。
l Timeout in milliseconds(单位是毫秒):所有并发的用户在多长时间内加载完成。
如图3-105的设置,同时启动30个并发用户,这30个并发用户在5秒中内加载完毕,也就是说每1秒钟加载6个用户。如果5秒内没有加载30个用户,系统不会理睬,加载多少就并发多少个。
今天关于“JMeter主要组件介绍(三)”就学习到这里了,每个工作日小编都会更新一个小知识,希望大家多多关注我们,一起来学习喔!