React Nativeユニット試験

1161 ワード

概要
ユニットテストとは、各ユニットに対して行われるテストであり、一般的には、関数、クラスまたは単一のコンポーネントに対して、システムと統合に関係なく、ユニットテストはソフトウェアテストの基礎テストであり、完全なソフトウェアシステムはユニットテストに関連します.
現在、Javascriptのテストツールはたくさんありますが、Reactに対するテストは主にFacebookのJestフレームを使用しています.JestはJasmineのJavaScriptテストフレームに基づいています.他のテストフレームと比べて、Jestは以下のような特徴があります.
  • 適応性:Jestはモジュール化、拡張、構成可能である.
  • サンドボックスと高速:JestはJavaScriptの環境を仮想化して、ブラウザを模擬することができて、しかも並行して実行します.
  • スナップショットテスト:Jestは、Reactツリーをスナップショットまたは他の順序データで迅速に試験を作成し、迅速に更新されたユーザー体験を提供することができます.
  • は非同期コードテストをサポートします.promisesとasync/awaitをサポートします.
  • は、静的解析結果を自動的に生成する.テストケースの実行結果だけでなく、ステートメント、ブランチ、関数などのカバー率も表示する.
  • 環境構築
    Jestを取り付ける
    まず、プロジェクトディレクトリの下に、以下のコマンドを使ってJestをインストールします.
    npm install --save-dev jest
    //  
    yarn add --dev jest
    
    あなたがreact-native initコマンドラインを使用してRNプロジェクトを作成し、RNバージョンが0.38以上であれば、手動でインストールする必要がなく、システムはプロジェクトを生成する際に自動的に依存を追加します.
    "scripts": {
     "test": "jest"
    },
    "jest": {
     "preset": "react-native"
    }
    
    Babelの設定
    現在多くのプロジェクトはes 6と以上のバージョンを使って作成されています.古いバージョンに対応するために、Babelを使ってes 5の文法をs 6に変換することができます.Babelを使用する前に、次のコマンドを使ってBabelをインストールする必要があります.