在不使用 Selenium 的情况下将 ChromeDriver 与 WebDriverIO 一起使用

Posted

技术标签:

【中文标题】在不使用 Selenium 的情况下将 ChromeDriver 与 WebDriverIO 一起使用【英文标题】:Using ChromeDriver with WebDriverIO without Selenium 【发布时间】:2017-11-27 06:02:05 【问题描述】:

我想使用 ChromeDriver 驱动我的 webdriverio 测试,而不是使用 Selenium。那应该是possible, it seems,但我不知道从哪里开始。

我试过这样启动 ChromeDriver

chromedriver

然后在另一个窗口中,我像这样启动了wdio testrunner:

$(npm bin)/wdio 

如果什么都不做,这只会让我着迷

ERROR: connect ECONNREFUSED 127.0.0.1:4444

更改 wdio.conf.js 中的端口以匹配 ChromeDriver 的端口 9515 让我很开心

ERROR: unknown command: wd/hub/session

我尝试将--url-base=wd/hub/session 添加到chromedriver 启动选项,但它只是将错误更改为

ERROR: unhandled request

还是不行。我已将 wdio 的 services 属性设置为 ['chromedriver'] - 但它似乎没有生效。

【问题讨论】:

【参考方案1】:

尝试使用 wdio-chromedriver-service。它被开发为能够在没有 Selenium 服务器的情况下运行 Chromedriver。

链接到 npm 注册表:https://www.npmjs.com/package/wdio-chromedriver-service。

【讨论】:

这就是我正在使用的。注意services: ['chromedriver'] 位。 抱歉,没注意到。【参考方案2】:

It turns out 我没能了解一个重要的信息

path: '/'

来自docs

路径

WebDriver 服务器的路径。

类型:字符串

默认值:/wd/hub

这是 Chromedriver 正在监听的地址。

【讨论】:

以上是关于在不使用 Selenium 的情况下将 ChromeDriver 与 WebDriverIO 一起使用的主要内容,如果未能解决你的问题,请参考以下文章

在不使用位置的情况下将 div 居中

如何在不使用任何付费工具的情况下将 dbf 文件导入 mysql?

如何在不使用 ToString() 的情况下将 Int 转换为 C# 中的字符串?

在不使用 Dataproc 的情况下将 GCP 与 PySpark 连接

有啥方法可以在不使用文件的情况下将 MIDI 加载到 AKAppleSequencer 或 AKSequencer 中?

在不知道数据类型的情况下将值绑定到 PreparedStatement