如何连接到 CircleCI 上的原生 Selenium

Posted

技术标签:

【中文标题】如何连接到 CircleCI 上的原生 Selenium【英文标题】:How to connect to native Selenium on CircleCI 【发布时间】:2015-12-02 05:44:04 【问题描述】:

我正在使用Intern 并遵循他们的advice on connecting to local Selenium with Chromedriver 运行一套功能测试。

在本地,一切正常,但在 CircleCI 上我得到了:

Error: [POST http://localhost:4444/wd/hub/session] connect ECONNREFUSED

这是否与如何在 CircleCI 上设置原生 Selenium 有关?我必须在后台手动运行它 (as described here) 还是它已经默认运行而我只是没有正确连接到它?

【问题讨论】:

默认情况下它实际上并没有运行。它将从这样的命令开始。 webdriver-manager update,然后是 webdriver-manager startbackground: true.... 有谁猜到了,设法让它加载 chrome,但还没有正确运行测试。 【参考方案1】:
    如果您想继续使用 NullTunnel

正如实习生的文档中所说的

如果您无法启动服务器或让实习生进入 与之通信,验证服务器是否正常运行 到http://localhost:4444/wd/hub/status。它应该返回一个 JSON 状态字段为 0 的响应。

a) 你能看到预期的状态吗?

b) 在运行 intern-runner 之前,请确保您已经自行启动了 Selenium。

c) 有人说需要使用 127.0.0.1 而不是 localhost,也许你也应该试试?

d) 一个罕见的情况,但也许你也可以检查一下,是你的 nodejs 版本。 csnover 曾经在这里提到过 nodejs 版本https://github.com/theintern/intern-tutorial/issues/10#issuecomment-56390886

    我认为更好的方法是使用 SeleniumTunnel。届时您将无需关心如何下载和运行 Selenium。

【讨论】:

很高兴看到在 CircleCI 上的 SeleniumTunnel 上运行的实习生的基本工作示例。你需要对 circle.yml 做些什么吗?最小的“hello world”应用会是什么样子?

以上是关于如何连接到 CircleCI 上的原生 Selenium的主要内容,如果未能解决你的问题,请参考以下文章

Docker:尝试使用本地 CircleCI 构建连接到 Docker 守护程序时权限被拒绝

在调试模式下连接到 Android 上的 Worklight 崩溃

如何获取 wifi AP 列表并从 Windows 商店应用程序连接到一个 AP

在没有网络的情况下从后台连接到 iOS 上的工作灯会崩溃

原生 iOS 客户端可以连接到 meteor.js 服务器吗?

如何连接到 Windows 上的 ODBC 数据库?