我正在使用auth创建入门工具包模板,并使用CRUD创建示例(https://github.com/fransyozef/basic-login-angular)
现在我是单元测试的新手,我试图让至少得到运行组件的测试 . 但我陷入困境
TypeError: Cannot read property 'subscribe' of undefined
我认为错误来自于
resolveRoute() {
this.route.params.subscribe(params => {
if (params['id']) {
this.id = +params['id'];
this.getItem();
} else {
this.handleItemNotFound();
}
});
}
有人可以帮我一把吗?
1 回答
你应该嘲笑你的路由策略 . 我可以看到你在
TestBed imports
中使用routingModule
. 假设您自己的routingModule
仅提供您自己的路线,并且无法模拟/侦察其他路线 . 所以我会鼓励你先调整Test helper routes
里面test.helper.ts
RouterTestingModule provide mocks, RouterModule not.
你应该做的第二件事是从Testbed中删除你的
provide
. 这不是必要的 . 我的意思是以下部分:删除它,因为这将是组件提供程序的重写 . 在你的情况下,它是不需要的 .
我希望我能帮助你 .