当前位置: 首页 > 面试题库 >

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

籍弘伟
2023-03-14
问题内容

我有一些针对angularjs应用运行的简单的业力/茉莉单元测试。我使用最新版本的Chrome,并在WebStorm IDE中运行测试。

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

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

我尝试了所有常识性修复。我在网上搜寻了一下,以发现我在做什么错。

为什么我的测试运行如此缓慢?


问题答案:

答案很简单。

我正在使用Chrome运行业力服务器。首次启动业力服务器时,Chrome实例将作为最大化窗口启动。因此,自然可以将其最小化,从而可以看到测试正在运行。

问题是Chrome缺少CPU周期的任何最小化或次级选项卡(切换选项卡)。

因此,如果最小化运行业力服务器的浏览器实例,或者只是切换到其他选项卡,则业力服务器严重缺乏CPU,并且测试需要很长时间才能完成。

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

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



 类似资料:
  • 问题内容: 我正在努力使用Karma + Jasmine测试AngularJS工厂。 我无法将工厂注入变量。 我究竟做错了什么? 注意:文件已正确加载 厂: 码: 输出: 问题答案: 您需要致电:

  • 问题内容: 如何使用AngularJS / karma / jasmine测试来测试API后端? 我试图创建显示我的错误的最小测试用例: echo_server.py 测试/单位/apiSpec.js 输出 问题答案: 提到的测试堆栈不适用于这种方式。由于该请求已装饰在您原始请求的顶部,因此该请求永远不会被分派。 要允许请求通过,您要么需要排除,要么指定某些网址应像这样通过: 在此处阅读文档 另外

  • 本文向大家介绍使用Jasmine和Karma对AngularJS页面程序进行测试,包括了使用Jasmine和Karma对AngularJS页面程序进行测试的使用技巧和注意事项,需要的朋友参考一下 AngularJS是继jQuery之后发生在JavaScript上最好的东西。这也是JavaScript开发一直以来想要的方式。Angular主要的优点之一就是它的依赖注入(Dependency Inje

  • 问题内容: 发生了最奇怪的事情,我的测试运行正常,但现在不再,我完全没有更改代码,这里是一个例外: 问题答案: 我看到您正在使用Eclipse,但您是否还在使用其他外部构建/测试工具,例如Ant或Maven?有时,在同时使用其他外部工具时,Eclipse可能会不同步。 如果使用外部工具,请执行清理生成的工件所需的所有操作(例如mvn clean)。然后刷新Eclipse项目并按照前面的建议进行干净

  • 我正在我的开发箱上运行Karma/Jasmine/Angular 2.0测试。就在最近,我的开发箱上的Jasmine决定开始运行我的测试三次。是的,整整三次,每次都是。 在第一次运行时,一切都按预期通过。然而,在第二次和第三次通过时,所有相同的事情都失败了。它总是承认有7次测试,但运行21次,10次失败(一年级数学)??? 这在Travis和SauceLabs上也失败了。(注意:这链接到一个包含3

  • 我接着跑道: 咕噜的因果报应 以运行测试,但它失败,出现以下错误: