我有一个JMeter网络驱动程序测试计划。我在哪里:
在Web Driver Sampler中,我们刚刚编写了一个简单的代码,它调用Firefox浏览器,将url传递给它,将Username和Passwords传递给它。 然后搜索一个术语并注销。
一旦我与3个用户一起运行此测试,测试对第一个和第二个用户运行良好,而第三个用户运行失败。
当我再次运行测试时,第一和第三个用户通过但第二个用户失败。
当我去检查响应消息时,它说它无法找到元素。
虽然它可以为下一个用户运行良好。
我不确定为什么测试的行为是这样的,有人可以帮我解决这个问题。
答案 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指南