为什么我的Angular2应用程序集成测试(JUNIT)会超时?

时间:2016-07-06 15:23:28

标签: amazon-ec2 angular selenium-chromedriver

我有一个Wildfly 8.x后端提供的NG1应用程序;我们的集成测试是用JUnit编写的;我们仅使用Chromedriver验证Chrome。我们的沙箱是MacBook Pro / El Capitan,而CI盒子是运行由Jenkins驱动的AWS Linux的AWS EC2。

NG1集成测试在我们的沙盒和CI盒(Jenkins)上运行得很好。 CI盒上的测试使用无头驱动程序和xvfb帧缓冲区。

我们将它移植到NG2。通过使用Angular.io升级指南中的说明开始移植工作。我们现在将NG1应用程序作为NG2根的子项运行;仅仅为了踢,我们添加了两个简单的NG2组件,降级为NG1并显示为应用程序视图的兄弟姐妹,没什么特别的。

移植的应用程序集成测试在我们的沙盒上运行得很好,但在CI框中失败,症状是FluentWait超时,适用于所有测试!

我找到了一些设置DBUS_SESSION_BUS_ADDRESS = / dev / null的建议,例如:https://github.com/SeleniumHQ/docker-selenium/issues/87。不幸的是,这个以及所有其他咒语都没有奏效。

我很想得到一些建议来帮助我。在此先感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

此问题的解决方案是升级运行集成测试的服务器技术堆栈:

  • chromedriver:从2.13升级到2.22
  • chrome:从41升级到53

可悲的是,没有任何文件证明这一点。