web-dev-qa-db-ja.com

`react-testing-library`と` cypress`の違いは何ですか?

そう、 react-testing-libraryは単体/統合テストに使用され、cypressはe2eテストに使用されます。ただし、どちらも同じことを行うように見えます。

react-testing-library

  • あざけるのを容易にする
  • ユーザーが行うテスト
  • 最上位のコンポーネントから開始します(厳格で迅速な要件ではありませんが、そうしないと、サブコンポーネントテストで一連の重複したテストケースが発生します)。
  • 迅速なフィードバック、高速

cypress

  • あざけるのを容易にする
  • ユーザーが行うテスト
  • トップレベルのコンポーネント(ページ)から始まります
  • 遅延したフィードバック、遅いが、追加のツールを提供します(ビデオプルーフ、テストのステップスルーなど)。

フィードバックサイクルを除いて、それらはほとんど同じに見えます。誰かが違いを明確にできますか?なぜ両方を使いたいのですか?

5
jack.benson

最初の行で質問に回答しました。 Reactアプリをエンドツーエンドでテストし、APIに接続してどこかにデプロイしたい場合は、サイプレスを使用します。

react-testing-libraryはアプリの下位レベルを対象としており、コンポーネントが期待どおりに機能することを確認します。サイプレスを使用すると、アプリはCDNの背後の環境にキャッシングを使用して展開され、そのデータはAPIから取得できます。サイプレスでは、エンドツーエンドの旅も作成します。これは、アプリを展開することで、自信を深めることができるアプリ内の幸せな道のりです。

1
Dan