web-dev-qa-db-ja.com

Angular 2.0.0-テスト「モジュール「DynamicTestModule」によりインポート」

Angular 2.でapp.component.tsのテストに問題があります。angular-cliを使用しています。 ng testを実行するたびに、app.component.spec.tsはコンソールにエラーを表示するプロンプトを表示します。

 Failed: Unexpected directive 'HomeModuleComponent' imported by the module 'DynamicTestModule'
 Error: Unexpected directive 'HomeModuleComponent' imported by the module 'DynamicTestModule'

TestModuleにHomeModuleComponentをインポートしました

TestBed.configureTestingModule({
  declarations: [AppComponent],
  imports : [ HomeModuleComponent ]
});

誰でもこの問題で私を助けることができますか?

21
xiotee

HomeModuleComponentComponentではなくModuleであるため、宣言に含める必要があります。

TestBed.configureTestingModule({
  declarations: [AppComponent, HomeModuleComponent],
  imports : [ ]
});

そして、テストするコンポーネントを作成して、

TestBed.createComponent(AppComponent);
24

私のテスト仕様では、誤ってserviceを提供する代わりにインポートしていました。同じエラーが発生していました。

service配列内にprovidersを追加して戻すと、エラーが解決しました。

2
Amit Chigadani