0
AngularFire2를 사용하고 있습니다. 테스트를 실행할 때이 예외가 발생했습니다. 나는 그것이 함수이기 때문에 AngularFire 주입 할 수 없다는 생각AngularFire 제공자가 없습니다.
import {inject, TestBed} from '@angular/core/testing';
import {FIREBASE_PROVIDERS, defaultFirebase, AngularFire} from 'angularfire2';
describe('stock data service',() => {
beforeAll(() => {
const config = {
apiKey: "123",
authDomain: "123.firebaseapp.com",
databaseURL: "https://123.firebaseio.com",
storageBucket: "123.appspot.com",
};
TestBed.configureTestingModule({
providers: [FIREBASE_PROVIDERS, defaultFirebase(config)]
});
});
it('should connect to Firebase', inject([AngularFire], (af : AngularFire) => {
expect(af.database).not.toBe(null);
}));
});
:
이처럼 내 테스트 보이는 무엇인가?
각도를 재설정하는 'beforeEach' 호출을 구성합니다 (https://github.com/angular/angular/blob/2.0.0/modules/%40angular/core/testing/testing.ts#L23-L28). 'TestBed'입니다. 이것이 beforeEach'에서'TestBed.configureTestingModule' 호출을해야하는 이유입니다 - Angular의'beforeEach'가'beforeAll' 후에 호출되고, 당신이 설정 한'TestBed'가 테스트 전에 리셋되고있는 것입니다. – cartant