我有一个奇怪的问题。每当我尝试测试某些内容并且测试失败时,它总会显示第9行的堆栈跟踪。
我使用AngularJS以及Jasmine和Karma。我发现它并不依赖于浏览器。错误如下所示:
TypeError: 'undefined' is not an object (evaluating 'new google.maps.LatLng')
at /Users/user1/project1/test_ctrl.js:9
at /Users/user1/project1/spec/test_ctrl_spec.js:170
因此,它告诉我测试在第170行失败(这是正确的),但错误的原因在我的test_ctrl.js
内部,行号与9号完全不同。这个行号是在每次失败的测试中显示。
任何人都知道如何解决这个问题?
答案 0 :(得分:14)
这似乎是使用karma-coverage的问题,因为istanbul代码覆盖工具缩小了源代码。业力报道回购中有一个open issue。如果您暂停在karma配置文件中禁用覆盖率报告器,它应该可以正常工作。
答案 1 :(得分:3)
似乎问题是"karma": "~0.12.16"
和"karma-jasmine": "~0.1.5"
。现在我得到了一个合适的堆栈跟踪。