Cypress は、Web アプリケーションのエンドツーエンドのテストを簡素化する人気のテスト フレームワークです。 Cypress で使用するコア コマンドの 1 つは、[cypress run](https://keploy.io/blog/community/comprehensive-guide-to-running-tests-with-cypress) です。このコマンドを使用すると、ヘッドレス環境でテストを実行できるため、継続的な統合とテストのワークフローに最適です。この投稿では、cypress run コマンドを効果的に使用し、その可能性を最大限に引き出す方法を探っていきます。
cypress run を使用する前に、まずプロジェクトに Cypress をインストールする必要があります。 Cypress をまだセットアップしていない場合は、簡単に始めることができます。次のコマンドを実行するだけです:
bash Copy code npm install cypress --save-dev
このコマンドは、Cypress を開発依存関係としてプロジェクトにインストールします。インストールしたら、npx cypress open を使用して Cypress を開いてテストの作成を開始できます。ただし、ヘッドレス ブラウザー (GUI なし) でテストを実行する場合は、cypress run コマンドを使用します。
cypress run コマンドは、ヘッドレス環境でテストを実行する最も簡単な方法です。すべてのテストを実行するには、次を実行するだけです:
bash Copy code npx cypress run
これにより、ヘッドレス ブラウザ (通常は Electron) を使用して、デフォルトで /cypress/integration フォルダーにあるすべてのテストが実行されます。テストはバックグラウンドで実行され、結果がターミナルに表示されます。
すべてのテストではなく、特定のテスト ファイルを実行したい場合があります。これは、特定の機能に取り組んだり、単一のテストをデバッグしたりする場合に特に便利です。 --spec フラグの後にテスト ファイルへのパスを指定することができます:
bash Copy code npx cypress run --spec cypress/integration/example.spec.js
このコマンドは、指定されたファイル内のテストのみを実行するため、反復を高速化できます。
サイプレスは、Chrome、Firefox、Electron などのさまざまなブラウザをサポートしています。デフォルトでは、Cypress は Electron でテストを実行します。ただし、--browser フラグの後にブラウザ名を渡すことで、使用するブラウザを選択できます:
bash Copy code npx cypress run --browser chrome
このコマンドは Chrome でテストを実行します。 Firefox などの他のサポートされているブラウザを指定することもできます:
bash Copy code npx cypress run --browser firefox
この柔軟性により、アプリケーションがさまざまなブラウザ環境でテストされ、ブラウザ間の互換性が確保されます。
サイプレスは、詳細なテスト結果を記録および表示できるサイプレス ダッシュボードと呼ばれる機能を提供します。テスト結果を記録するには、--record フラグを使用する必要があります:
bash Copy code npm install cypress --save-dev
--record フラグを使用すると、Cypress はテスト結果を Cypress ダッシュボードに自動的にアップロードし、テストのログ、スクリーンショット、ビデオを表示できます。
テストをダッシュボードのプロジェクトにリンクするには、Cypress ダッシュボード アカウントでプロジェクトを設定し、次のようにプロジェクトのレコード キーを指定する必要があります。
bash Copy code npx cypress run
テストを記録すると、テスト履歴を追跡し、失敗や不安定なテストについての洞察を得るのに役立ちます。
大規模なテスト スイートを扱う場合、すべてのテストを順番に実行すると時間がかかることがあります。 Cypress は、テストをグループ化して並列化する機能を提供し、複数のマシン間で同時に実行できるようにします。
--group フラグを使用してテストをグループ化できます。
bash Copy code npx cypress run --spec cypress/integration/example.spec.js
さらに、--Parallel フラグを使用してテストを並列実行して、実行を高速化することができます。
bash Copy code npx cypress run --browser chrome
テストを並列化すると、多数のテストの実行にかかる時間を大幅に短縮できます。これは継続的インテグレーション パイプラインにとって重要です。
Cypress では、環境変数を構成して、さまざまな環境に基づいてテストの動作を変更できます。 --env オプションを使用して環境変数を Cypress に渡すことができます:
bash Copy code npx cypress run --browser firefox
このコマンドは apiUrl 変数と env 変数を設定します。これらの変数には、Cypress.env('apiUrl') を使用してテスト内でアクセスできます。この機能は、テストの実行中に異なる環境 (ステージング、本番環境など) を切り替える必要がある場合に役立ちます。
場合によっては、タイミングの問題や外部依存関係により、テストが断続的に失敗することがあります。テストの信頼性を向上させるために、サイプレスでは失敗したテストを再試行するオプションを提供しています。
--retries フラグを使用して再試行の回数を指定できます。
bash Copy code npx cypress run --record
このコマンドは、失敗したテストを最大 2 回再試行します。これにより、不安定なテストの影響が軽減され、より安定したテスト結果が保証されます。
cypress run コマンドを継続的インテグレーションおよび継続的デリバリー (CI/CD) パイプラインに統合することは、テスト プロセスを自動化するために重要です。 Jenkins、CircleCI、GitHub Actions、GitLab CI などの一般的な CI ツールは、Cypress テストの実行をサポートしています。
ここでは、GitHub Actions を使用して Cypress テストを実行するための基本的な CI パイプラインを構成する方法の例を示します。
bash Copy code npx cypress run --record --key <your-dashboard-project-key>
この構成では、依存関係をインストールし、ヘッドレス ブラウザーで Cypress テストを実行します。また、テスト結果は Cypress ダッシュボードに記録されます。
cypress run コマンドをマスターすると、開発者はテストを効率的に実行し、結果を記録し、複数の環境にわたってテストを拡張できるようになります。単一のテスト ファイルを実行する場合でも、何百ものテストを並列処理する場合でも、サイプレスはテスト ワークフローを合理化するために必要なツールを提供します。 cypress run を CI/CD パイプラインに組み込むことで、アプリケーションが常にテストされ、デプロイの準備が整っていることを確認できます。
以上がCypress run は人気のあるテスト フレームワークですの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。