如何解决在Angular 6中为业力测试抛出的[object ErrorEvent]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何解决在Angular 6中为业力测试抛出的[object ErrorEvent]相关的知识,希望对你有一定的参考价值。

如何解决[对象ErrorEvent]抛出,请建议任何人。当我为特定方法编写测试用例时,在调试方法调用期间,我无法找到[object ErrorEvent]抛出的位置。

我变得喜欢这个错误

Chrome 68.0.3440 (Windows 10 0.0.0): Executed 19 of 19 (2 FAILED) DISCONNECTED (1 min 7.294 secs / 0 secs)
Chrome 68.0.3440 (Windows 10 0.0.0) ERROR
  
    "message": "An error was thrown in afterAll\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown",
    "str": "An error was thrown in afterAll\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown\n[object ErrorEvent] thrown"
  
答案

我有一个类似的问题,在我的开发工具中检查控制台给了我更多关于错误的信息。投掷这个标志也可能有所帮助:

--source-map=false
另一答案

在我的发现之后,我发现我们应该在karma.conf.js中设置browsers: ['Chrome']singleRun: false。然后运行所有测试用例并打开Chrome浏览器控制台并查看错误。这样您就可以找出问题的根本原因。这招对我有用。我希望这个技巧对你有用。

另一答案

我完全同意@Dan的答案 - 但如果您已经运行了测试,您还可以使用开发人员工具javascript调试器来逐步查看代码以查找问题。

我经常发现错误是在构造函数中取消引用未定义的对象或在测试的组件中取消引用ngOnInit方法。要么在没有源映射的情况下运行,要么进行调试

以上是关于如何解决在Angular 6中为业力测试抛出的[object ErrorEvent]的主要内容,如果未能解决你的问题,请参考以下文章

未捕获的类型错误:无法读取未定义抛出的属性“coSearchCriteria” - Angular Karma/Jasmine

Angular 2 业力设置问题——业力启动但不运行测试

在 Angular 1.5 中将模块注入业力测试

测试可观察对象 Angular 2 业力

针对订户错误的 Angular 2 业力单元测试

如何捕获测试中可观察订阅抛出的异常