gpt4 book ai didi

angularjs - 分析 karma-runner/jasmine 中的内存泄漏

转载 作者:行者123 更新时间:2023-12-03 06:24:29 25 4
gpt4 key购买 nike

我有一个 AngularJS 应用程序,有大约 2000 个单元测试,这会消耗大量内存。一旦测试启动,它们就会运行得非常快(在 Chrome 中),直到内存消耗达到 1.5GB,此时每个测试开始需要大约 3 秒。

现在,我非常确定这与 Why are my AngularJS, Karma / Jasmine tests running so slowly? 相关。 .

此时我不知道是测试泄漏还是应用程序本身泄漏。我想分析测试执行情况。

我已阅读 unit-tests karma-runner/jasmine profiling我正在尝试执行以下操作:

You can use localhost:9876/debug.html and profile the memory. Check the memory before executing (after Jasmine executed all the describe() blocks and collected the tests) and then after executing the tests - it should be the same.

但是如何才能做到这一点呢?

我真的不明白如何可以检查之前和之后。我可以以某种方式暂停测试执行吗? jasmine 能否告诉我它何时“收集了测试”并等待我进行分析?

或者还有其他方法吗?

最佳答案

这不是完整的答案,而只是“大声思考”...

  1. 我会首先开始隔离一个套件。
  2. 然后我会开始查看 Chrome Console API - 所以暂时只关注一种浏览器。
  3. 现在,在每个 beforeEachafterEach 触发并关闭分析器(对每个分析使用套件 + 测试名称):请参阅 console.profile(\[label\])console.profileEnd()来电。
  4. 此时,您无需停止任何操作来运行分析,在测试结束时您将获得所有结果(带标签)。

一旦找到内存上升的地方,您就可以集中该区域并可能以更具体的方式开始调试...

关于angularjs - 分析 karma-runner/jasmine 中的内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27547683/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com