如何知道Jmeter中每个用户的每个请求的结束时间

如何知道Jmeter中每个用户的每个请求的结束时间,jmeter,Jmeter,我正在使用Jmeter,并希望为每个用户标识每个请求的结束时间 请看一下我的测试计划: 线程组:2个用户 循环:1 2 HTTP请求(请求1、请求2) 开始测试Web性能,查看结果树显示:4个结果(2个用于请求_1,2个用于请求_2) 请求_2:1通过,1失败。在结果树的请求表中,我看到: Thread Name: jp@gc - Stepping Thread Group 1-1 Sample Start: 2014-04-18 09:28:06 ICT Load time: 1100554

我正在使用Jmeter,并希望为每个用户标识每个请求的结束时间

请看一下我的测试计划:

线程组:2个用户 循环:1

2 HTTP请求(请求1、请求2)


开始测试Web性能,查看结果树显示:4个结果(2个用于请求_1,2个用于请求_2)

请求_2:1通过,1失败。在结果树的请求表中,我看到:

Thread Name: jp@gc - Stepping Thread Group 1-1
Sample Start: 2014-04-18 09:28:06 ICT
Load time: 1100554
Latency: 550450
Size in bytes: 408190
Headers size in bytes: 4774
Body size in bytes: 403416
Sample Count: 1
Error Count: 0
Response code: 200
Response message: OK

Response headers:
HTTP/1.1 200 OK
Date: Fri, 18 Apr 2014 02:28:15 GMT
Server: Apache
X-Powered-By: PHP/5.3.3
Set-Cookie: ls23166422738597439695-runtime-publicportal=h4knpfldt76e3kvmunrn5i4u16; path=/limesurvey/
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
P3P: CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
Last-Modified: Fri, 18 Apr 2014 02:36:09 GMT
Cache-Control: post-check=0, pre-check=0
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html; charset=utf-8


HTTPSampleResult fields:
ContentType: text/html; charset=utf-8
DataEncoding: utf-8
问题是:

  • 如何确定导致请求_2失败的时间?以及如何为每个用户显示每个请求的结束时间

  • 如何在Jmeter的日志面板中显示信息(在GUI上启用调试日志模式),如“这是错误…由于…”

  • 此外,在日志面板(GUI中的活动日志调试)中,日志条目在线程1-n(n=1,2…)处停止,30秒后,日志将继续显示。所以,我想知道这一次,web服务器有错误,而在这一次,Jmeter仍然发送请求或等待web服务器响应

  • 谢谢

  • 您可以通过它添加任何“有趣”请求的子级。示例代码如下所示:

       import java.util.Date;
    
       long end_time_ms = prev.getEndTime(); // obtain sampler end time (in milliseconds from 1st Jan 1970)
       Date end_time_date = new Date(end_time_ms); //convert it to human-readable date if you prefer 
    
       String response_message = prev.getResponseMessage(); // get initial response message
    
       StringBuilder response = new StringBuilder(); // initialize StringBuilder to construct new response
       response.append(response_message); // add initial response message
       response.append(System.getProperty("line.separator")); // add new line
       response.append("Thread finished at: ").append(end_time_date); // add thread finish date
       prev.setResponseMessage(response.toString()); // set new response message
               log.info("Thread finished at:" + end_time_date"); // to print it to the log
    
  • 请参见上面的Beanshell代码和下面的图像了解UI影响

  • 除了开发或调试测试之外,决不要使用GUI。如果您想在日志中添加内容,请使用
    log.info(“某物”)如上所述或JMeter函数