問題タブ [angular-testing-library]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
107 参照

angular - Angular 11 は、URL が呼び出されたかどうかをテストできません

angular testingに問題がありました。ボタンのクリックでURLがいつ変更されるかを検出したい。私はスタックで多くの同様の問題を追跡しましたが、1週間後に目標を達成できません:/

説明

ここに私のHTMLテンプレートがあります:

これが私のテストです:

テストを実行すると、次の2 つのエラーが発生します。

研究

  • スタックに関するいくつかの調査の後RouterTestingModule、インポートから削除することができたので、次のようになりました。
  • スタック :p で別の検索を行いましたが、削除することはできまし{ provide: Router, useValue: router }たが、保持RouterTestingModuleしたところ、次のようになりました。

コンソールエラー

注: を削除しているときにすべてのリンクがレンダリングされないことに気付いたRouterTestingModuleので、解決策はRouterTestingModule{ provide: Router, useValue: router },?

  • (click)代わりにa を使用するrouterLinkと、うまく機能しないのはなぜですか?

どんな助けでも素晴らしいでしょう:) よろしくお願いします!

0 投票する
0 に答える
115 参照

javascript - Angular Testing Library テストで html プロパティをレンダリングする

Angular テストに testing-library を使用しています。HTML からプロパティを設定して、必要な方法でコンポーネントをレンダリングできるようにする必要がある状況があります...このプロパティはモジュールから取得されます。 componentProperties を介してコンポーネントを渡してレンダリングしようとしましたが、うまくいきませんでした...コンポーネントを適切にレンダリングできるように、テストでこのプロパティを設定する方法を知っていますか?

次のように、html にあるプロパティ ifMobile をレンダリングする必要があります。

これは私がテストしようとしていた方法です:(このようにしてテストを実行してもエラーは表示されませんが、コンポーネントはレンダリングされず、基本的にコンポーネントはまったく変更されませんでした)

私もこの方法でテストしようとしました(この方法では、ifMobileは有効なプロパティではないため、テストを実行することさえできません)