問題タブ [enzyme]

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 投票する
1 に答える
235 参照

javascript - Mocha 反応ネイティブ ルーターでのコンパイル エラー

ここで問題として提起しました。単体テストを行うことができました-浅くレンダリングして反応するネイティブコンポーネントをテストしましたが、プロジェクトに react-native-router フラックスを導入すると、エラーで失敗し始めました

0 投票する
1 に答える
7927 参照

javascript - Enzymeを使用してMochaでReactコンポーネントの完全なレンダリングを待つ方法は?

ParentコンポーネントをレンダリングするコンポーネントがありChildます。コンポーネントは最初に「名前」などの一意の小道具をレンダリングし、次に親コンポーネントChildが「タイプ」などの共通の小道具をレンダリングし、.ChildReact.Children.map

私の問題は、Enzyme がSectionコンポーネントによってレンダリングされる一般的な小道具を検出できないため、一般的な小道具が追加されているかどうかを効果的にテストできないことです。

テスト:

共通の小道具を注入するためのコード:

0 投票する
4 に答える
76524 参照

reactjs - エラー: このメソッドは、単一ノードでのみ実行することを意図しています。代わりに 0 件見つかりました

コンポーネントでキーバインド機能をテストしています。コンポーネントはかなり単純で、 のイベント リスナーであり、コンポーネントを非表示にするredux アクションkeyupを起動します。

ここでコードをクリーンアップして、関連する情報のみにしました。ストア ディスパッチを使用してアクション コールを行うだけでテストに合格することはできますが、もちろん、それではこのテストの目的が無効になります。Enzyme を使用keyupして、適切なイベント データ (のキーコードesc) でイベントをシミュレートしていますが、以下のエラーが発生します。

MyComponent.js

MyComponent-test.js

エラー:

0 投票する
2 に答える
26078 参照

asynchronous - シミュレートされたクリックが promise を呼び出す関数を呼び出すときに、React の Jest と Enzyme を使用してテストする

  • React v15.1.0
  • ジェスト v12.1.1
  • 酵素 v2.3.0

クリックによって呼び出される関数でプロミスを呼び出すコンポーネントをテストする方法を見つけようとしています。ここで Jest のrunAllTicks()機能が役立つことを期待していましたが、約束を実行していないようです。

成分:

そしてテスト:

0 投票する
1 に答える
1776 参照

reactjs - focus() 使用時の TypeError

入力ボックスを持つ反応コンポーネントがあります。入力ボックスにフォーカスを設定するために componentDidUpdate を使用しました。しかし、私のテストは typeError で失敗しています。以下は私のコードです。テストに合格するのを手伝ってください。あなたより!!これは私の反応コンポーネントです `

` コンポーネントが更新されると、テストは失敗します。私にこのエラーを与える

TypeError:未定義のプロパティ「フォーカス」を読み取れません

ここで何が悪いのか教えてくれる人はいますか?

0 投票する
1 に答える
242 参照

unit-testing - Enzyme を使用して、クラスや ID を使用しない React コンポーネントをテストする

renderコンポーネントの 1 つのメソッドに次のものがあります。

className="something"Enzyme はセレクターを使用して動作するため、CSS クラスとしてまったく使用していない場合でも、div にput を使用するのが最善の方法のようです。それ以外の場合は、Material UI のコンポーネント内にいくつの div があるかを把握しPaper、非常に複雑なクエリを実行して X レベルを div に深く掘り下げ、テストしたいクリック可能な div に到達する必要があります。言うまでもなく、クリック可能な div を少し下または上に移動すると、技術的には div がまだレンダリングされていて、まだクリック可能であるにもかかわらず、テストが中断されます。

他に方法がなければ?

0 投票する
2 に答える
695 参照

reactjs - エンザイムシャローとマウントでTDD?

shallowまたはを使用してコンポーネントをレンダリングするmountと、コンポーネントはメモリ内にレンダリングされ、DOM にアタッチされません。

これは、テストを実行している間、実際にはブラウザに出力が表示されないことを意味します。

開発中のコンポーネントが適切に見えるかどうかわからない場合、テスト駆動開発を行うにはどうすればよいですか? (CSS スタイル、サイズなど)