如何在Jmeter 的Javascript 中实现mouseover 事件?
How to implement mouseover event in Javascript inside of Jmeter?
我正在 Jmeter
中使用 WebDriver Sampler 插件编写负载测试。
我的鼠标悬停功能有问题。我已经尝试了很多我在 Whosebug 和类似网站上找到的 solutions/fixes 但 none 有效。
我认为将 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()
的组合
我想完成一个 "hover mouse" 元素的事件。
WebElement class 中没有定义 mouseover
函数,我的预期是您的测试在您调用它的那一行失败了。
我认为您需要特别使用 Actions class in general and 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
link 变暗,一秒钟后变回红色 License
link变暗。
查看 The WebDriver Sampler: Your Top 10 Questions Answered 以了解有关 WebDriver Sampler 提示和技巧的更多信息。
我正在 Jmeter
中使用 WebDriver Sampler 插件编写负载测试。
我的鼠标悬停功能有问题。我已经尝试了很多我在 Whosebug 和类似网站上找到的 solutions/fixes 但 none 有效。
我认为将 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()
我想完成一个 "hover mouse" 元素的事件。
WebElement class 中没有定义 mouseover
函数,我的预期是您的测试在您调用它的那一行失败了。
我认为您需要特别使用 Actions class in general and 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
link 变暗,一秒钟后变回红色 License
link变暗。
查看 The WebDriver Sampler: Your Top 10 Questions Answered 以了解有关 WebDriver Sampler 提示和技巧的更多信息。