JMeter等待页面完全加载

问题描述

是否可以等待XPath或CSS选择器在Jmeter中显示

我正在使用HTTP请求发送API调用,并且我有断言作为CSS选择器路径,但是由于API速度慢,我想为UI中的特定元素实现waitfor方法

解决方法

JMeter在得到服务器的响应之前不会执行任何Post-ProcessorsAssertionsListeners,因此您无需执行任何操作。有关更多详细信息,请参见Execution order用户手册一章。


但是,如果我误解了您的要求,并且您想重复HTTP请求,直到XPath或CSS提取器返回您要查找的值,就可以将请求放在While Controller下,并在其中放置您选择的条件:

enter image description here

在上述情况下:

  • 在While控制器${myVariable}的迭代0上没有任何值(尚未执行CSS选择器提取器)
  • 从1到5的迭代-${myVariable}的值为foo,它与Controller的条件不匹配,因此会循环
  • 迭代6-${myVariable}的值变为bar,而While控制器退出循环。

以防万一,jexl3() function的文本表示形式用于将变量与某些值进行比较:

${__jexl3("${myVariable}" != "bar",)}