运行ng test时完全错误
错误: StaticInjectorError(DynamicTestModule)NotificationsComponent StaticInjectorError(平台:核心)NotificationsComponent授权服务 没有提供AuthService的提供者! 被认为是真实的。 错误:未定义为真实的预期。 在堆栈(modules/jasmine-core/lib/jasmine-core/jasmine.js:2176:17) buildExpectationResult (modules/jasmine-core/lib/jasmine-core/jasmine.js:2146:14) Spec.expectationResultFactory (modules/jasmine-core/lib/jasmine-core/jasmine.js:766:18) Spec.addExpectationResult (modules/jasmine-core/lib/jasmine-core/jasmine.js:444:34) Expectation.addExpectationResult (modules/jasmine-core/lib/jasmine-core/jasmine.js:710:21) Expectation.toBeTruthy (modules/jasmine-core/lib/jasmine-core/jasmine.js:2099:12) 在物体上。(/webpack:/C:/../webTest/src/app/components/notifications/notifications.component.spec.ts:97:23) ZoneDelegate.webpackJsonp.../../../../zone.js/dist/zone.js.ZoneDelegate.invoke (modules/zone.js/dist/zone.js:388:1) ProxyZoneSpec.webpackJsonp.../../../../zone.js/dist/proxy.js.ProxyZoneSpec.onInvoke (modules/zone.js/dist/proxy.js:79:1) ZoneDelegate.webpackJsonp.../../../../zone.js/dist/zone.js.ZoneDelegate.invoke (modules/zone.js/dist/zone.js:387:1)
我的代码服务:
describe('Component: Auth', () => {
let component: AuthService;
let fixture: ComponentFixture<AuthService>;
beforeEach(() => {
TestBed.configureTestingModule({
declarations: [AuthService]
})
fixture = TestBed.createComponent(AuthService);
component = fixture.componentInstance;
});
});你能问我,有什么问题吗?
发布于 2018-05-21 13:04:29
如下所示使用它:
服务应该在providers数组中。
describe('Component: Auth', () => {
let component: AuthService;
let fixture: ComponentFixture<AuthService>;
beforeEach(() => {
TestBed.configureTestingModule({
declarations: [],
providers: [AuthService] // **Like this.**
})
fixture = TestBed.createComponent(AuthService);
component = fixture.componentInstance;
});
});发布于 2018-05-21 13:05:48
您必须实例化服务:let service = new AuthService();,不需要调用"createComponent“等等。
https://stackoverflow.com/questions/50449449
复制相似问题