ng-bullet vs karma-parallel vs配置测试模块-改进角单元测试性能

时间:2019-07-02 09:05:54

标签: angular unit-testing jasmine karma-jasmine angular-unit-test

我正在努力寻找最佳和可靠的解决方案,以加快以角度项目编写的单元测试的速度。

我浏览了一些博客,建议两者之一使用

(1) ng-bullet

(2) karma-paralle

(3) ng test  --browsers ChromeHeadless

(4) configure your test module inside beforeAll suite 

Angular 4 Unit Tests (TestBed) extremely slow(第4点)

我的问题是,我们是否可以一次使用所有这些选项来加快单元测试的执行以及构建时间,如果不是,我应该选择哪个选项来提高单元测试用例执行的性能。

还有哪个选项更可靠,更易于使用?

任何帮助/建议都是有意义的。

谢谢

2 个答案:

答案 0 :(得分:1)

我不了解ng-bullet,现在正在尝试实现它。我可能会对此回应发表评论。

karma-parallel-我用它来加快测试速度,但这是因为测试是以反模式方式编写的。使用karma-parallel使单元测试更快是一次微不足道的机会,因为您必须记住业力并行必须委派如何在各个浏览器实例之间拆分描述块,这本身可能会花费很长时间。

无头运行测试可能会加快测试速度,并减少计算机上的资源消耗。

对您而言,最重要的是与他们一起进行试验,并找出最适合您的方法。

答案 1 :(得分:0)

我在项目中使用ng-bullet,但我没有更好的方法来提高单元测试的速度。在不同的项目中,所有检查的ng-bullet速度都要快大约5倍。 您可以看到没有ng-bulle的情况: You can see how it was without ng-buller 以及现在如何 and how it is now 我认为ng-bullet如果数量不超过2000次测试,则是提高测试速度的最简单方法,在这种情况下,您也需要使用业力并行。但是在某些情况下,ng-bullet的错误记录没有用,可能很难理解发生了什么。