ユニットテストは初めてです。私はReactプロジェクトをテストしたいと思います。Reactで始めたドキュメントは、酵素をテストユーティリティとして参照しており、あいまいなものです。
Jest
とenzyme
の違いは何ですか?
enzyme
アサーションライブラリまたはタスクランナーですか?karma
をJasmine
と一緒に使用できますか?react-redux
プロジェクトをテストする最良の方法は何ですか?Jestは、タスクランナー、アサーションライブラリ、優れたモックサポートを備えたフレームワークであり、さまざまなユニットテストケースを実行し、その結果をコンソールまたはログファイルに書き込み、モックを作成したり、すべてを検証したりできます。つまり、アサーションはテストを実行します。
Enzymeは、React TestUtils、JSDOM、およびCheerIOのようなパッケージをラップして、単体テストを作成するためのよりシンプルなインターフェイスを作成するライブラリです。React TestUtilsには、反応コンポーネントをドキュメントにレンダリングし、イベントをシミュレートするメソッドがあります。JSDOMは、DOM(Documentオブジェクトモデル)のJavaScript実装です。DOMは、UIコンポーネントのツリー構造を表します。CheerIOは、jQueryコアのサブセットを実装し、 DOMのクエリに使用されます。
したがって、酵素はテストランナーではありません。単体テスト用のAPIのコレクションを提供するだけなので、独自のアサーションライブラリはありません。それが、jestや他のタスクランナーと統合できる理由です。
はい、カルマをジャスミンと一緒に使用できます。
アーロンのコメントはあなたの最初の質問に答えます。
Enzymeは、Reactコンポーネント(浅いレンダリングを許可するなど)のユニットテストユーティリティ関数を提供します。Enzymeのドキュメントでは、任意のテストランナーまたはアサーションライブラリで使用できると記載されています-参照 http:// airbnb.io/enzyme/ 。
はい、カルマをジャスミンと一緒に使用できます。
React-reduxプロジェクトをテストする最良の方法に関する限り、これは別の質問です。StackOverflowを検索することをお勧めします。 :)