JMeter-APDEX将开始以及结束时间精确到秒

在JMeter的APDEX报告中,在Test and Report informations中,会看到Start Time和End Time默认只精确到分钟。如图:
JMeter-APDEX将开始以及结束时间精确到秒_第1张图片
APDEX_Minute_level.png

由于我们需要收集更多这段测试时间内的信息,所以精确度应该是到秒级别且用24小时制会更方便阅读。因此,我们需要对源代码进行小小的修改。

导出APDEX报告的组件类中,最关键的是/src/core/org/apache.jmeter/report/dashboard/HtmlTemplateExporter.java中的。
在Jmeter 4.0的版本中,line 463行和467行,分别对beginDate, endDate这两个变量进行了处理。可以看到,最初这两个变量为long型。

如图:
JMeter-APDEX将开始以及结束时间精确到秒_第2张图片
HtmlTemplateExporter_format_date.png

再继续跟代码,发现它的调用了TimeHelper类中的formatTimeStamp(long time)方法;该方法的调用场景目前只有这里,所以可以放心的修改。必要的话,可以在这里写个新方法去调用就好了。
如图:


JMeter-APDEX将开始以及结束时间精确到秒_第3张图片
HtmlTemplateExporter_format_timeHelper.png

再跟代码,TimeHelper类位于/src/core/org/apache.jmeter/report/core/TimeHelper.java, 修改line 81,修改如下代码:
JMeter-APDEX将开始以及结束时间精确到秒_第4张图片
HtmlTemplateExporter_format_timeHelper_modify.png

之后用Ant的Package命令进行编译打包,修改的源代码依然生成在ApacheJMeter_core.jar中,替换原来的相应文件。

这是修改后生成的效果:
JMeter-APDEX将开始以及结束时间精确到秒_第5张图片
APDEX_Second_level.png

你可能感兴趣的:(JMeter-APDEX将开始以及结束时间精确到秒)