【问题标题】:JMeter Web Driver Test randomly fails for some threads某些线程的 JMeter Web 驱动程序测试随机失败
【发布时间】:2014-08-12 06:32:38
【问题描述】:

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

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

在 Web Driver Sampler 中,我们刚刚编写了一个简单的代码,它调用 Firefox 浏览器,将 url 传递给它,将用户名和密码传递给它。 然后搜索一个词并退出。

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

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

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

而对于下一个用户来说它会运行良好。

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

【问题讨论】:

  • 你能展示你的测试计划吗?并放大 Webdriver 采样器?谢谢

标签: jmeter jmeter-plugins


【解决方案1】:

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

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 指南

【讨论】:

    猜你喜欢
    • 2015-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-19
    • 2020-02-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多