与大型量角器测试套件持续集成

时间:2015-03-11 17:13:02

标签: angularjs continuous-integration protractor travis-ci browserstack

我们有一个应用程序,由2位开发人员开发3个月。该网站相对较小,仅完成了1/3,但测试相当全面。

在我们的开发机器上运行Protractor在串行运行时需要60分钟,在运行分片时需要40分钟,并且有2个并发会话。

针对2个并发会话的6个兼容性针对BrowserStack运行Protractor需要4个小时。

推断完成产品的这些测试时间(即4小时+ 200%)意味着总测试时间约为12小时。这超过了travis-ci.com的120分钟限制,并使我们进入Browserstack的999美元/月等级。这也意味着,充其量任何更改(包括错误修复)都需要12个小时才能显示。

其他人是否会遇到同样的问题?若然,他们如何解决?

2 个答案:

答案 0 :(得分:0)

在我看来,您应该更改测试策略并仅通过运行整合套件来开始发布新功能/错误,或者您可以选择极少数最重要的平台来运行整个测试以发布。我知道这不是发布功能的理想方式,但至少它会让你非常有信心继续。

第二个选项在CI工具中使用多个作业在不同平台上运行测试,如果有任何财务限制,那么我说让我们有一个本地CI工具设置。也许你可以和詹金斯一起去。

答案 1 :(得分:0)

我们刚刚完成了这种CI实现(TFS + Jenkins)。我们还使用Browserstack,我们在上一个项目中有大约150个e2e测试。执行这些测试还需要相当长的时间。所以我们做了什么,我们决定不是在每次提交后执行这些测试,而是每天作为夜间工作。在早上可以查看结果并查看smth是否出错/为什么构建失败。我们使用最便宜的计划,我们有4个不同的配置文件(chrome / safari / firefox / iOS),每个配置文件有4个浏览器/平台设置。实际上有点棘手:即使你有最便宜的browserstack计划,你也可以并行地执行4个测试而没有任何问题。

顺便说一下,我们使用Git + Bitbucket + Babmoo,它比TFS + Jenkins更友好用户

相关问题