某些线程的JMeter Web驱动程序测试随机失败

时间:2014-08-12 06:32:38

标签: jmeter jmeter-plugins

我有一个JMeter网络驱动程序测试计划。我在哪里:

  • 包含3个用户的线程组
  • Web驱动程序采样器,
  • Firefox驱动程序配置
  • 并在树监听器中查看结果。
  • 我还有一个CSV数据集配置,其中我已将其映射到CSV文件以接收用户名和密码。

在Web Driver Sampler中,我们刚刚编写了一个简单的代码,它调用Firefox浏览器,将url传递给它,将Username和Passwords传递给它。 然后搜索一个术语并注销。

一旦我与3个用户一起运行此测试,测试对第一个和第二个用户运行良好,而第三个用户运行失败。

当我再次运行测试时,第一和第三个用户通过但第二个用户失败。

当我去检查响应消息时,它说它无法找到元素。

虽然它可以为下一个用户运行良好。

我不确定为什么测试的行为是这样的,有人可以帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

在WebDriver get()请求之后,元素可能不会立即出现在DOM中,我建议添加一个额外的步骤,以确保指定的元素存在于DOM中,并且可以在点击/键入之前与之交互: / p>

var pkg = JavaImporter(org.openqa.selenium)
var support_ui = JavaImporter(org.openqa.selenium.support.ui.WebDriverWait)

wait.until(support_ui.ExpectedConditions.presenceOfElementLocated(pkg.By.id('element_id')))
var element=WDS.browser.findElement(pkg.By.id('element_id')) 
element.click()

有关JMeter中的Selenium脚本的更多详细信息,请参阅Using Selenium with JMeter's WebDriver Sampler指南