[解決済み] Angular2でEventEmitterをテストする方法は?
2022-10-27 13:26:25
質問
EventEmitterを使用するコンポーネントがあり、ページ上の誰かがクリックされたときにEventEmitterが使用されます。ユニットテスト中にEventEmitterを観察し、TestComponentBuilderを使用してEventEmitter.next()メソッドをトリガーする要素をクリックし、何が送られたかを見ることができる方法はありますか?
どのように解決するのですか?
あなたのテストは、可能性があります。
it('should emit on click', () => {
const fixture = TestBed.createComponent(MyComponent);
// spy on event emitter
const component = fixture.componentInstance;
spyOn(component.myEventEmitter, 'emit');
// trigger the click
const nativeElement = fixture.nativeElement;
const button = nativeElement.querySelector('button');
button.dispatchEvent(new Event('click'));
fixture.detectChanges();
expect(component.myEventEmitter.emit).toHaveBeenCalledWith('hello');
});
あなたのコンポーネントがあるとき
@Component({ ... })
class MyComponent {
@Output myEventEmitter = new EventEmitter<string>();
buttonClick() {
this.myEventEmitter.emit('hello');
}
}
関連
-
[解決済み] Moqでクラスをモックするとき、特定のメソッドだけをCallBaseする方法は?
-
[解決済み] プライベートメソッド、フィールド、インナークラスを持つクラスをテストするにはどうすればよいですか?
-
[解決済み] 抽象クラスをユニットテストする方法:スタブで拡張する?
-
[解決済み] データベース駆動型アプリケーションのユニットテストに最適な戦略とは?
-
[解決済み】典型的なテストディレクトリ構造でunittestを実行する
-
[解決済み】*ngIfの@ViewChild
-
[解決済み】ユニットテストを実行せずにMavenプロジェクトをビルドする
-
[解決済み] テストが見つかりません。インストールされているテストのディスカバラーとエグゼキューター、プラットフォームとフレームワークのバージョン設定が適切であることを確認し、もう一度試してみてください。
-
[解決済み] Python のユニットテストでメソッドが呼び出されたことを表明する
-
[解決済み] 例:無効なutf8文字列?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Assert.Fail()はバッドプラクティスとみなされるか?
-
[解決済み] jest.fn()の機能と使い方を教えてください。
-
[解決済み] プライベートメソッドをテストすべきか、パブリックメソッドのみをテストすべきか?[クローズド]
-
[解決済み】Angular 2 Unit Tests。名前 'describe' が見つからない
-
[解決済み] Spring Dataのリポジトリをテストするには?
-
[解決済み] ユニットテストはゲッターとセッターのために書くべきですか?
-
[解決済み] Goでテストカバレッジを測定する方法
-
[解決済み] ユニットテストとは、どのようなもので、どのように行うのですか?[重複あり]
-
[解決済み] Junit: 統合テストと単体テストの分割
-
[解決済み] 単体テスト?統合テスト? 回帰テスト? 受入テスト?