0
私は、ngrx(Reduxロジックの場合)とrxjs(観測可能な場合)を使用して、角度2のプロジェクトに取り組んでいます。ngrxの角度2のコンポーネント - ユニットテストの実行時のエラー
これで、自動作成された.spec.tsファイルを実行してプロジェクトをテストしようとしました。
いくつかのテストは失敗し、それらのすべてがStore(ngrxから)を使用するコンポーネントのテストです。 ここではそのうちの一つである:
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { By } from '@angular/platform-browser';
import { DebugElement } from '@angular/core';
import { MyComponent } from './overlay-menu-item.component';
describe('MyComponent',() => {
let component: MyComponent;
let fixture: ComponentFixture<MyComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ MyComponent ],
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(MyComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create',() => {
expect(component).toBeTruthy();
});
});
は、私は問題の世話、エラーがあった。
No provider to Store
は、だから私は追加:今すぐ
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ MyComponent ],
providers: [Store]
})
.compileComponents();
}));
(私はテストのためにジャスミンを使用します)他のエラーが発生しました:
No provider for StateObservable
だから私は追加します。
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ MyComponent ],
providers: [Store, StateObservable]
})
.compileComponents();
}));
しかし、今、私は私がそれをするために行うのか分からないという新しいエラーを得た:
Failed: Can't resolve all parameters for StateObservable: (?). Error: Can't resolve all parameters for StateObservable: (?). at syntaxError [mywebprojectPath]/node_modules/@angular/compiler/@angular/compiler.es5.js:1689:22)
私は何をすべき?