我正在构建一个项目,我们必须使用Selenium运行端到端测试,如下所示:运行集中式集成或端到端测试(例如Selenium)。有必要在外部登台服务器(例如Heroku)上运行它。要运行集成测试,应用程序需要连接到外部系统,例如数据库中。
这很可能与我们的.travis.yml文件有关,现在看起来像这样(即使我们已经和文件来回走了):
...
script:
- ./gradlew check
deploy:
provider: heroku
api_key:
secure: *****
app: *****
after_deploy:
- ./gradlew seleniumXvfb
基本上,我们要做的是首先运行./gradlew检查哪个运行单元测试,然后将应用程序部署到heroku,最后在登台服务器(heroku)上运行Selenium测试(端到端测试)。 / p>
但是,发生的事情是,travis似乎并不关心硒测试失败时是否会失败。 Travis显示整体构建的绿色复选标记,就像一切正常。
当这一切结束时,我们希望部署到生产服务器。
谢谢。
答案 0 :(得分:2)
after_deploy
目前在Travis CI中没有失败。
如果您想针对Heroku上正在运行的临时系统测试您的应用程序,那么我建议您在before_script
步骤中手动部署此应用程序,然后在{{./gradlew seleniumXvfb
中运行script
命令1}}部分。
然后,您可以根据对登台系统的测试成功进行正确的生产部署。