单元测试出错:
Error: : handleError() method does not exist
Usage: spyOn(, )
at
at UserContext.apply (http://localhost:9876/karma_webpack/src/global-message/http-interceptors/http-error.interceptor.spec.ts:121:9)
at ZoneDelegate.invoke (http://localhost:9876/karma_webpack/C:/Code/SPA/spartacus/node_modules/zone.js/dist/zone.js:386:30)
at ProxyZonespec.onInvoke (http://localhost:9876/karma_webpack/C:/Code/SPA/spartacus/node_modules/zone.js/dist/zone-testing.js:292:43)
at ZoneDelegate.invoke (http://localhost:9876/karma_webpack/C:/Code/SPA/spartacus/node_modules/zone.js/dist/zone.js:385:36)
at Zone.run (http://localhost:9876/karma_webpack/C:/Code/SPA/spartacus/node_modules/zone.js/dist/zone.js:143:47)
at runInTestZone (http://localhost:9876/karma_webpack/C:/Code/SPA/spartacus/node_modules/zone.js/dist/zone-testing.js:545:38)
at UserContext. (http://localhost:9876/karma_webpack/C:/Code/SPA/spartacus/node_modules/zone.js/dist/zone-testing.js:560:24)
原因出在下图高亮的这行代码上:
handlerClass的类型是一个function,而不是具体的对象实例。因此,handler.handleError为undefined:
const handler = Testbed.inject(handlerClass) as HttpErrorHandler;
更多Jerry的原创文章,尽在:“汪子熙”:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。