javascript - 如何在 Jmeter 的 Javascript 中实现鼠标悬停事件?

标签 javascript selenium jmeter selenium-chromedriver mouseover

我正在使用 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 链接变暗。

enter image description here

查看 The WebDriver Sampler: Your Top 10 Questions Answered了解有关 WebDriver Sampler 提示和技巧的更多信息。

关于javascript - 如何在 Jmeter 的 Javascript 中实现鼠标悬停事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58625415/

相关文章:

javascript - TypeError : io. 连接不是函数

testing - Jmeter : How to test a website to render a page regardless of the content

java - Junit测试用例在STS中成功运行,但无法通过Jmeter运行。

css - 检查 Web 元素是否具有带有伪选择器的类(:first-child) applied using Selenium WebDriver

测试失败时 Docker 构建 : returned a non-zero code: 1,

selenium - Python Selenium : Global driver - 'driver' is not defined in the global scope

jmeter - 使用 jmeter 进行 Web 压力和负载测试 - 好到什么程度?基准指南?

javascript - 如何将 JSON 数据转换为制表符表

javascript - 我想访问一个 JS 文件中提供的 enTranslations,如下所示,但我无法访问它

JavaScript 根据名称对 DOM 元素进行排序