我正在写angular2 - karma - jasmine的单元测试。
错误:没有MockBackend的提供者!当写单元测试angular2 final
我使用mockBackend
来响应服务调用API时的数据。 这是我的代码
function Connection(mockBackend) {
connection.mockRespond(new Response(
new ResponseOptions({
body: JSON.stringify(lookup)
}
)));
});
}
describe('Update Contact Details Test',() => {
let fixture, comp;
beforeEach(async(inject([MockBackend], (mockBackend: MockBackend) => {
Connection(mockBackend);
TestBed.configureTestingModule({
declarations: [ ContactFieldListComponent ],
providers: _.union(DEFAULT_PROVIDERS, [FieldService, LookupsService, ContactService]),
schemas: [CUSTOM_ELEMENTS_SCHEMA],
imports: DEFAULT_IMPORT
})
.compileComponents().then(() => {
fixture = TestBed.createComponent(ContactFieldListComponent);
comp = fixture.componentInstance;
});
})));
it('get contact field list',() =>
expect(1).toBe(1);
});
});
它不与错误Error: No provider for MockBackend!
工作。
我该如何解决它?
什么'DEFAULT_PROVIDERS'的内容? – Dinistro
@Dinistro,'DEFAULT_PROVIDERS = [{提供:LocationStrategy,useClass:HashLocationStrategy},TranslateService,FormBuilder,DatePipe]'。 – Sophia
在这种情况下,看看我的回答:) – Dinistro