gpt4 book ai didi

javascript - Selenium "Unrecognized command: actions"

转载 作者:行者123 更新时间:2023-11-29 23:15:15 24 4
gpt4 key购买 nike

我正在尝试根据位置进行鼠标点击。但是,我似乎无法始终收到以下消息来执行操作。我通过尝试双击 google.com 主搜索栏重现了该问题。

For help, see: https://nodejs.org/en/docs/inspector (node:38864) UnhandledPromiseRejectionWarning: UnknownCommandError: Unrecognized command: actions warning.js:18 at buildRequest (c:\GitRepo\MMT4\src\javascript\Web.Tests\node_modules\selenium-webdriver\lib\http.js:375:9) at Executor.execute (c:\GitRepo\MMT4\src\javascript\Web.Tests\node_modules\selenium-webdriver\lib\http.js:455:19) at Driver.execute (c:\GitRepo\MMT4\src\javascript\Web.Tests\node_modules\selenium-webdriver\lib\webdriver.js:696:38) at process._tickCallback (internal/process/next_tick.js:68:7) (node:38864) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3) warning.js:18 (node:38864) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

使用 npm 导入包

"devDependencies": {
"@types/node": "^10.12.0"
},
"dependencies": {
"chromedriver": "^2.43.0",
"selenium-webdriver": "^4.0.0-alpha.1"
}

根据我在这里找到的文档,它应该可以工作 https://seleniumhq.github.io/selenium/docs/api/javascript/index.html https://seleniumhq.github.io/selenium/docs/api/javascript/module/selenium-webdriver/lib/input_exports_Actions.html

还在网络上找到了支持它应该工作的不同示例,但看不到这个基本示例中缺少什么:

"use strict";
require('chromedriver');
const { Builder, By, Key, until, ActionSequence } = require('selenium-webdriver');
(async function run() {
let driver = await new Builder().forBrowser('chrome').build();
try {
await driver.get('http://www.google.com');

await driver
.actions()
.doubleClick(By.id('lst-ib'))
.perform();
}
finally {
await driver.quit();
}
})();

还在带有 Protractor 的项目中进行了测试,它似乎可以工作,但我不明白为什么我需要在这个项目中使用 Protractor ,因为它不使用 Angular。

谢谢

最佳答案

我找到了解决方案

我尝试降级 selenium-webdriver 版本 3.6.0

那么,也许可以工作和 keydown 方法只有 4 种执行方式(我需要使用键盘!)

key.CONTROL
key.SHIFT
key.ALT
key.COMMAND

因此,如果您需要其他键盘操作,请使用 sendKeys 方法(我使用的是 Tab 键)

这里我引用了链接 https://github.com/SeleniumHQ/selenium/issues/5428

关于javascript - Selenium "Unrecognized command: actions",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53013850/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com