protractor - 鼠标在量角器中的元素上移动
问题描述
我想将鼠标悬停在一个元素上,然后单击它。下面是代码
await browser.actions().mouseMove(elm, { x: 200, y: 200 }).perform();
await browser.wait(EC.visibilityOF(elm2),10000);
await elm2.click();
我也尝试过不使用偏移量,例如:
await browser.actions().mouseMove(elm).click().perform();
但是,我无法获得悬停效果并单击我想要的元素,即本例中的 elm2。我的量角器版本是5.4.1
感谢您的帮助。
谢谢
解决方案
我发现 protractor-test-helper 中的例程非常有用和健壮。这些(以及使用和安装说明)可以在github.com/hetznercloud/protractor-test-helper找到
所以在你的情况下,你会说:
import { click, hover} from '@hetznercloud/protractor-test-helper/dist';
然后
await hover(elm, 10000); //hover over item, waiting up to 10 seconds
await click(elm2, 10000, 3); //waits for elm2 to show up, up to 10 seconds, clicks on it, 3 retries
但是,如果您只是想查看他们的悬停实现代码以获得灵感(与您的没有偏移量和开头三行结构的代码并没有什么不同),它位于https://github.com/hetznercloud的第 55 行/protractor-test-helper/blob/master/dist/actions.js
我知道这并没有确切地告诉你如何改变你所拥有的,但我希望它至少能给你一种(或两种)前进的方式。
推荐阅读
- reactjs - 环境变量在生产中未定义(使用 Heroku 部署的 React App)
- java - 使用 oAuth2 访问 Office365 的 EWS API
- sql - 删除架构的调试权限?
- corda - Corda Finance 数据库表迁移失败从 Corda 3 升级到 Corda 4
- python - TKinter 按钮和函数语法
- scala - 如何爆炸火花数据框
- python - 在python中的数组的子数组中附加值
- c# - 通过 Razor 页面传递多个参数值
- vue.js - 如何在 Vue 自定义中间件中获取 Vuex 更新的 getters 值以进行权限检查?
- scala - 如何根据字符数解析字符串?