如何在JMeter中向子采样器添加断言

如何在JMeter中向子采样器添加断言,jmeter,Jmeter,我有一个采样器,可以检索嵌入的资源。这个采样器正在生成6个子样本。我添加了大小断言,并在“应用于”中选择了“子样本”单选框。在重播期间,由于断言失败,所有其他5个子样本都将失败。请告诉我是否有任何方法仅验证特定子样本 < P>恐怕JMeter的大小断言不能提供足够的灵活性,您需要考虑切换到您可以在语言中实现任何想要的传递/失败标准的地方。p> 用例的示例代码: prev.getSubResults().each { subResult -> if (subResult.get

我有一个采样器,可以检索嵌入的资源。这个采样器正在生成6个子样本。我添加了大小断言,并在“应用于”中选择了“子样本”单选框。在重播期间,由于断言失败,所有其他5个子样本都将失败。请告诉我是否有任何方法仅验证特定子样本


< P>恐怕JMeter的大小断言不能提供足够的灵活性,您需要考虑切换到您可以在语言中实现任何想要的传递/失败标准的地方。p> 用例的示例代码:

prev.getSubResults().each { subResult ->
    if (subResult.getSampleLabel().equals('generate_pdf-6')) {
        if (subResult.getBodySize() < 30000) {
            subResult.setSuccessful(false)
            subResult.setResponseMessage('Download size is less than 30 000 bytes')
            prev.setSuccessful(false)
            prev.setResponseMessage('Download size is less than 30 000 bytes')
        }
    }
}
prev.getSubResults()。每个{subResult->
if(subResult.getSampleLabel().equals('generate_pdf-6')){
if(subResult.getBodySize()<30000){
subResult.setSuccessful(false)
subResult.setResponseMessage('下载大小小于30000字节')
上一次设置成功(错误)
prev.setResponseMessage('下载大小小于30000字节')
}
}
}
更多信息:

演示:


尝试在响应大小字段下选择响应主体,根据特定样本测试并配置“要断言的大小”部分

测试选项的响应大小字段:

  • 完整响应-在采样器中有“字节大小”
  • 响应体-在采样器中,您有“以字节为单位的体大小”
  • 响应头-在采样器中,您有“以字节为单位的头大小”

只是想知道如果我需要验证子示例中的文本而不是字节大小,该怎么办?
subResult.getResponseDataAsString().contains('value your want check')
。有关所有可用的函数和属性,请参见类,并了解有关JSR223测试元素可用的其他JMeter API快捷方式的更多信息