在 Angular 上运行 karma 测试时出现“Uncaught [object Object]”

2023-12-27

在为我的应用程序运行单元测试时,我正在与这个奇怪的错误作斗争。

zone.js:260 Uncaught [object Object] thrown
Zone.runTask @ zone.js:260
ZoneTask.invoke @ zone.js:423

我不知道哪个测试失败,因为控制台只删除该错误。这在我的本地没有发生,测试运行没有任何问题。

在此错误之前,我遇到了“脚本错误”错误,但我使用 ChromeHeadless 的 --disable-web-security 标志解决了它。我不知道这是否与这个新错误有关。

我的语言环境和远程都是linux。


您可能在远程安装了不同版本的模块,或者不同版本的全局 npm 包。任何不匹配的依赖版本都可能在任一计算机上产生不同的结果。

清除两台机器上的 npm 缓存:

npm cache clean

重新安装您的node_modules在两台机器上:

rm -fr node_modules
npm install

验证每台机器上的本地 npm 包是否相同

npm list --depth=0

验证全局包版本是否相同。您可以像这样列出全局包

 npm list -g --depth=0

一旦你拥有一切都一样。您应该在两台机器上看到相同的结果。

从尝试运行业力开始

  karma start

如果有效,接下来分别运行每个测试。

  karma run -- --grep=search_string

如果错误阻止您开始业力。检查测试的启动脚本,看看是否可以从 Angular 应用程序中注释掉模块。不断减少依赖关系,直到 Karma 运行起来。慢慢地重新引入依赖关系,直到找到违规者。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Angular 上运行 karma 测试时出现“Uncaught [object Object]” 的相关文章

随机推荐