鼠标悬停在柏树上

sun*_*nny 8 mouseover cypress

我是 cypress 的新手,尝试为我的学习创建一些基本脚本,通过单击元素处理下拉列表很好,但在这种情况下将鼠标悬停在元素上不起作用,我可以看到所需的元素正在悬停,但子元素已悬停- 菜单没有出现。

it.only('Mouse hover using trigger ', () => {
        cy.visit('https://www.puregrips.com/pages/custom-grips')

        cy.contains("a", "Custom").trigger('mouseover')

    })
   
Run Code Online (Sandbox Code Playgroud)

Ala*_*Das 8

您可以使用cypress-real-events插件,这适用于您的网页。

要安装,请使用以下命令:

npm i cypress-real-events
Run Code Online (Sandbox Code Playgroud)

然后在你的里面cypress/support/index.{js,ts}写:

import "cypress-real-events/support";
Run Code Online (Sandbox Code Playgroud)

在你的代码中你可以直接写:

cy.contains("a", "Custom").realHover('mouse')
Run Code Online (Sandbox Code Playgroud)

测试的测试运行器屏幕截图

注意:由于上述插件使用 Chrome DevTools Protocols 来模拟本机事件,因此这仅适用于基于 Chromium 的浏览器,因此不适用于 Firefox。

我尝试过但不起作用的事情 -

cy.contains("a", "Custom").trigger('mouseover')
cy.contains("a", "Custom").invoke('show')
Run Code Online (Sandbox Code Playgroud)

  • 有人可以确认该插件是否仍然有效吗?我今天尝试了它,它通过了,但没有真正悬停在元素中?谢谢 (2认同)