我正在尝试为订阅方法编写测试用例。code to check
当我用
ng test --code-coverage true测试用例正在通过,但代码覆盖率报告中未涵盖订阅方法
npm run sonar-scanner有人能帮上忙吗?
发布于 2019-03-06 01:30:50
创建模拟服务并将其作为提供者注入到component.spec.ts中
import { of } from 'rxjs';
export class MockService{
validate(){
return of()
}
queryUser(){
return of({username: 'myUser'})
}
}然后注入为
providers : [
{provide: YourActualService , useClass: MockService}
]然后像这样测试它:
it('should initilize user name',()=> {
component.token = "123";
fixture.detectChanges();
expect(component.uname).toBe('myUser')
})useClass将用我们MockService替换组件的service,在我们的an中,我们使用of()返回一个observable
https://stackoverflow.com/questions/54999180
复制相似问题