selenium - Nightwatch 一直报 502 bad gateway

标签 selenium docker nightwatch.js

我有一个用于 nightwatch.js 的 docker 设置,可以通过 selenium 网格为快速服务器应用程序运行 selenium 测试。当我只使用 docker-compose up 然后在服务器启动后手动运行我的夜间测试时,一切似乎都可以正常启动。如果我将它们作为容器命令的一部分运行(即在我的应用服务器容器命令或基于它的仅运行 nightwatch 的新容器中),那么我会收到 503 bad gateway 错误。我认为我的 docker 设置中有一个竞争条件导致了这种情况。有没有办法保证我的应用服务器在运行我的夜间测试之前正常启动?

最佳答案

在命令前加上 wait-for-it.sh脚本(下载它并放入图像):

command: /wait-for-it.sh theotherservice:PORT -- your-previous-command
wait-for-it.sh将等待指定的 server:port 执行 -- 之后的命令,因此您可以避免竞争条件。

关于selenium - Nightwatch 一直报 502 bad gateway,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44620406/

相关文章:

javascript - Nightwatch.js - 无法弄清楚如何将局部变量传递到 URL 参数中

selenium - 守夜人测试 : Set browser to fixed size

nightwatch.js - 使用 NightwatchJS 测试页面标题

java - Selenium Grid TestCase 分发问题

javascript - <Selenium WebDriver JS> 找不到元素和隐式等待问题

maven - 如何在不同的阶段从Maven构建2个docker镜像?

docker - Powershell,等待第一个进程结束

python - 如何在 Selenium Python 中获取标签名称?

javascript - 点击角色为='button'的div元素无效

node.js - Docker 和 PM2 : String based CMD with environment variables