如何在 WebdriverIO 中点击 CTRL+M (Control + M)
How to click on CTRL+M (Control + M) in WebdriverIO
我必须在 WebdriverIO 中发出 CTRL+M 操作,但它不起作用。
我尝试过使用不同的方式,例如:
browser.keys('Control').keys('m');
browser.keys(['Control','KeyM', 'NULL']);
browser.keys(['Control', 'm', 'NULL']);
browser.keys('Control').keys('KeyM');
browser.deviceKeyEvent(82); browser.pressKeycode(82); browser.keys('MENU');
以上 None 有效。谁能帮帮我?
简答,否。您目前 无法将键命令与任何驱动程序配置链接起来。 .keys()
实际上仍然适用于 chromedriver
(仅发送文本,无链接),但它已被标记为弃用。有关详细信息,请参阅下面的列表。
Dependencies:
"selenium-standalone": "^5.11.2",
"wdio-selenium-standalone-service": "0.0.8",
"webdriverio": "4.8.0"
Driver versions affected:
ChromeDriver: 2.29-x64-chromedriver
GeckoDriver: 0.16.0-x64-geckodriverIEDriver:
3.4.0-x64-IEDriverServer
.keys()
命令有什么问题?
- 这是整个 Selenium 社区的一个已知问题,在驱动程序(
chromedriver
、geckodriver
等)实现 Webdriver 的新 W3C 标准之前,不会 fixed/tackled 在 WebdriverIO 中对于用户输入,Actions API;
- 没有其他方法可以做到这一点(相信我,我试过了!),除非您实际上可以通过代码替换
CTRL + M
操作的功能;
- 这里有一个 BUG 记录了 GeckoDriver (Firefox) 的这个问题;
- 即使
.keys()
方法适用于您当前的版本,Christian-Bromann 确认它将在下一个版本中 弃用 (它也被标记为弃用在 /lib/protocol/keys.js
定义文件中)。
注意: 对于使用不同 WDIO 命令有类似问题的任何人,.keys()
(WDIO)、.sendKeys()
(WebdriverJS) 的弃用也适用于其他损坏的 WebdriverIO 方法,如 .moveTo()
。阅读更多相关信息 here。
我必须在 WebdriverIO 中发出 CTRL+M 操作,但它不起作用。
我尝试过使用不同的方式,例如:
browser.keys('Control').keys('m');
browser.keys(['Control','KeyM', 'NULL']);
browser.keys(['Control', 'm', 'NULL']);
browser.keys('Control').keys('KeyM');
browser.deviceKeyEvent(82); browser.pressKeycode(82); browser.keys('MENU');
None 有效。谁能帮帮我?
简答,否。您目前 无法将键命令与任何驱动程序配置链接起来。 .keys()
实际上仍然适用于 chromedriver
(仅发送文本,无链接),但它已被标记为弃用。有关详细信息,请参阅下面的列表。
Dependencies:
"selenium-standalone": "^5.11.2",
"wdio-selenium-standalone-service": "0.0.8",
"webdriverio": "4.8.0"
Driver versions affected:
ChromeDriver: 2.29-x64-chromedriver
GeckoDriver: 0.16.0-x64-geckodriverIEDriver:
3.4.0-x64-IEDriverServer
.keys()
命令有什么问题?
- 这是整个 Selenium 社区的一个已知问题,在驱动程序(
chromedriver
、geckodriver
等)实现 Webdriver 的新 W3C 标准之前,不会 fixed/tackled 在 WebdriverIO 中对于用户输入,Actions API; - 没有其他方法可以做到这一点(相信我,我试过了!),除非您实际上可以通过代码替换
CTRL + M
操作的功能; - 这里有一个 BUG 记录了 GeckoDriver (Firefox) 的这个问题;
- 即使
.keys()
方法适用于您当前的版本,Christian-Bromann 确认它将在下一个版本中 弃用 (它也被标记为弃用在/lib/protocol/keys.js
定义文件中)。
注意: 对于使用不同 WDIO 命令有类似问题的任何人,.keys()
(WDIO)、.sendKeys()
(WebdriverJS) 的弃用也适用于其他损坏的 WebdriverIO 方法,如 .moveTo()
。阅读更多相关信息 here。