3

我试图找出最好和可靠的解决方案来加快我在 Angular 项目中编写的单元测试。

我浏览了一些建议使用的博客

(1) ng-bullet

(2) karma-paralle

(3) ng test  --browsers ChromeHeadless

(4) configure your test module inside beforeAll suite 

Angular 4 单元测试(TestBed)非常慢(第 4 点)

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

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

任何帮助/建议都是可观的。

谢谢

4

2 回答 2

1

我不知道ng-bullet,我现在正在尝试实现它。我可能会对我的发现发表评论。

karma-parallel- 我用它来加快测试速度,但这是因为测试是以反模式方式编写的。让你的单元测试更快karma-parallel的机会很小,因为你必须记住 karma-parallel 必须委派如何在浏览器实例之间拆分描述块,这本身可能需要很长时间。

无头运行测试可以使测试更快并在您的计算机上消耗更少的资源。

对你来说最重要的是对每一个和它们一起进行试验,看看我认为什么最适合你。

于 2019-10-10T20:01:28.403 回答
1

我在我的项目中使用 ng-bullet,但我没有遇到提高单元测试速度的更好方法。在不同的项目中,检查所有测试的 ng-bullet incerese 速度大约快 5 倍。你可以看到没有 ng-bulle 的情况: 你可以看到没有 ng-buller 的情况 现在 以及现在的情况 我认为 ng-bullet 是提高测试速度的最简单方法,如果它的数量不超过 2000 个测试,在这种情况下你需要使用 karma-parallel也。但在某些情况下,ng-bullet 确实记录了无用的错误,可能很难理解发生了什么。

于 2019-11-22T13:36:49.560 回答