我正在使用 WebDriver Sampler 插件在 Jmeter
中编写负载测试。
我的鼠标悬停功能有问题。我尝试了很多在 stackoverflow 和类似网站上找到的解决方案/修复,但都没有用。
我认为将 jquery 库导入脚本可以解决我的问题,或者创建 javascript 鼠标悬停事件。
WDS.sampleResult.sampleStart()
var logowanieMenu = WDS.browser.findElement(pkg.By.id('ctl00_MainMenun0'))
logowanieMenu.mouseover()
WDS.sampleResult.sampleEnd()
java.lang.Thread.sleep(800)
或
WDS.sampleResult.sampleStart()
var logowanieMenu = $('#ctl00_MainMenun0')
logowanieMenu.mouseover()
WDS.sampleResult.sampleEnd()
java.lang.Thread.sleep(800)
我还尝试了 logowanieMenu.hover()
和 logowanieMenu.focus()
我想完成一个将“鼠标悬停”在元素上的事件。
最佳答案
WebElement 中没有定义mouseover
函数类,我的期望是你的测试在你调用它的地方失败了。
我相信你需要使用 Actions一般类和moveToElement()特别是功能,例如:
var actions = new org.openqa.selenium.interactions.Actions(WDS.browser)
actions.moveToElement(logowanieMenu).perform()
用于演示目的的示例代码:
WDS.sampleResult.sampleStart()
WDS.browser.get('http://jmeter.apache.org/')
var overview = WDS.browser.findElementByLinkText('Overview')
var actions = new org.openqa.selenium.interactions.Actions(WDS.browser)
java.lang.Thread.sleep(1000)
actions.moveToElement(overview).perform()
java.lang.Thread.sleep(1000)
var license = WDS.browser.findElementByLinkText('License')
actions.moveToElement(license).perform()
java.lang.Thread.sleep(1000)
WDS.sampleResult.sampleEnd()
如果你运行它,你会看到第一个 Overview
链接变暗,一秒钟后它变回红色,License
链接变暗。
查看 The WebDriver Sampler: Your Top 10 Questions Answered了解有关 WebDriver Sampler 提示和技巧的更多信息。
关于javascript - 如何在 Jmeter 的 Javascript 中实现鼠标悬停事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58625415/