无法在jmeter中获取prev.getParent()。getStartTime()的响应时间

时间:2019-11-20 11:42:47

标签: jmeter jsr223

我正在尝试获取JMeter中完整测试用例(所有事务)的响应时间。我将使用它来计算起搏 JSR223 Timer

我可以使用prev.getTime()来获取单个样本的时间,但是当我使用prev.getParent().getTime()时,我看不到日志中的任何内容,并且脚本也不会暂停。

我也尝试过将计时器置于另一个级别(线程组的作用域),但仍然没有。我在哪里错了?

谢谢, 萨钦(Sachin)

1 个答案:

答案 0 :(得分:0)

prev.getParent()函数适用于子结果,例如,当采样器是Transaction Controller的子级时。

如果您在线程组中的某个位置只有一个Sampler,它将没有任何父级,因此您的函数将因NPE而失败。

您可以通过引入getParent()来检查null来解决此问题,例如:

def time = 0
if (prev.getParent() != null) {
    time = prev.getParent().getTime()
} 
else {
    time = prev.getTime()
}

如果需要,请查看How to Easily Implement Pacing in JMeter文章以获取更全面的信息。