JMeter:在哪种情况下,我可以使用“主样本”或“子样本”或两者用于响应断言中的文本响应

时间:2015-01-29 12:35:59

标签: jmeter assertion

我想知道在哪种情况下我可以在响应断言中使用“主样本”或“子样本”或两者来处理文本响应。

我用谷歌搜索了它,但还没有得到满意的答案。

帮助表示赞赏。

2 个答案:

答案 0 :(得分:6)

根据JMeter帮助,

This is for use with samplers that can generate sub-samples, e.g. HTTP Sampler with embedded resources, Mail Reader or samples generated by the Transaction Controller.

Main sample only - assertion only applies to the main sample
Sub-samples only - assertion only applies to the sub-samples
Main sample and sub-samples - assertion applies to both.
JMeter Variable - assertion is to be applied to the contents of the named variable

在大多数情况下,只有主采样器具有所有必需的响应数据,但是现在由于ajax,jquery框架单个请求可以在内部产生多个子请求,并且每个请求都有其响应数据。

因此在大多数情况下,在主要采样器中搜索响应就足够了

enter image description here

enter image description here

但是如果您知道或者您发现该请求有多个子请求且响应可以在任何地方,那么您可以选择“主样本和子样本”单选按钮,这样您就不会错过子请求。

enter image description here

答案 1 :(得分:2)

当您选择“检索所有嵌入资源”时,您拥有的HTTP请求可能会生成子采样器(对于img,css,js文件等)。您可以根据您希望“预期文本”出现的采样器相应地选择响应断言中的选项。

  • 主要样本和子样本: JMeter将检查主样本和子样本中是否存在“预期文本”,如果任何采样器没有文本,则会失败。< / LI>
  • 仅限主要样本: - JMeter将仅检查主样本中的“预期文本”。如果找不到,它就会失败。
  • 仅限子样本: - JMeter将仅检查所有子样本中的“预期文本”。所有子采样器都应该有文本。否则就会失败。