为什么我的AngularJS,Karma/Jasmine测试运行这么慢?

前端之家收集整理的这篇文章主要介绍了为什么我的AngularJS,Karma/Jasmine测试运行这么慢?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一些简单的karma /茉莉花单元测试运行一个angularjs应用程序。我使用最新版本的Chrome,并从WebStorm IDE中运行我的测试。

有时测试套件运行非常快(0.24秒)

有时完全相同的测试套件完全相同的代码运行非常缓慢(120秒)

我试过了每一个常识。我已经搜索网络尝试和发现我做错了。

为什么我的测试运行这么慢?

答案变得很简单。

我使用Chrome运行karma服务器。当您首次启动karma服务器时,Chrome的实例将作为最大化窗口启动。所以自然你最小化这,所以你可以看到你的测试运行。

问题是,Chrome使任何最小化或辅助选项卡(切换选项卡)的cpu周期饥饿。

因此,如果您最小化运行karma服务器的浏览器实例,或者只是切换到不同的选项卡,那么karma服务器严重缺乏cpu,测试需要很长时间才能完成。

解决方案是使karma选项卡保持活动状态。浏览器窗口可以隐藏在其他窗口后面,但是karma选项卡必须是选定的选项卡,并且浏览器不能最小化。

遵循这些简单的规则将确保您的测试始终以全速运行。

猜你在找的Angularjs相关文章