自動テスト

cypressでテストの順序を設定する方法【複数の自動テストを指定した順序で実行する】

PCでコーディング

こんにちは、フルスタックエンジニアのryuです。

今回の記事では、cypressでテストの順序を設定する方法について解説します。複数の自動テストを指定した順序で実行してみましょう。デフォルトでは、ファイル名の順で実行されます。ファイル名に数値を付けるか、cypress.jsonにファイルの実行順を設定します。

サーバー構築を実践で身につけるInfraAcademy

※本ページには、プロモーション・アフィリエイトリンクが含まれています

cypressでテストの順序を設定する方法

cypressでテストの順序を設定する方法は以下の2種類あります。

  • ファイル名を変更する
  • cypress.jsonを編集する

cypressのテストは、ファイル名の順に実行されるので、実行する順番を変更したい方にオススメの内容です。では、早速解説します。

ファイル名を変更する|順番を設定する方法①

まずは、ファイル名を変更する方法です。これが一番簡単です。

実行したいファイルの先頭に数値を付けることをオススメします。以下のようにファイルを作成します。

// cypress/integration/の配下に以下のファイル名で作成
01-test.spec.js
02-test.spec.js
03-test.spec.js

フォルダーの場合も同様です。フォルダーの先頭に数値を付けます。

// cypress/integration/の配下に以下のファイル名で作成
01-test/
 |---test1.spec.js
02-test/
 |---test2.spec.js
03-test/
 |---test3.spec.js

このように先頭に数値を付けることで、ファイルが並び替えられ、cypressが順にテストを実行します。ファイル名やフォルダー名を変更したくない方は、設定ファイルに記述する方法がオススメです。

cypress.jsonを編集する

実行するファイルの順番を設定する2つ目の方法は、cypress.jsonを編集する方法です。cypress.jsonを以下のように編集します。

{ 
 "testFiles": [
    "test1.spec.js",
    "test2.spec.js",
    "test3.spec.js",
    //...
  ]
}

これで、”test1.spec.js”から順に実行されます。フォルダの場合も同様に以下のように設定します。

{ 
 "testFiles": [
    "test1/*.js",
    "test2/*.js",
    "test3/*.js",

    //...
  ]
}

cypressで実行順を変更する方法まとめ

今回の記事では、cypressでテストの実行順序を変更する方法を解説しました。今回の記事は、以下の記事を参考にしています。英語ですが、興味のある方はご覧ください。

Cypress – How can I run test files in order – Stack Overflow

その他、cypressに関連する記事はこちらで解説しています。

自動テストについてさらに勉強したい方はこちらの参考書がオススメです。

ABOUT ME
ryu@InfraAcademyというインフラ学習サービス運営
大手企業→上場ベンチャー→スタートアップでエンジニアをしていました。 インフラエンジニア歴10年以上。 Linuxやネットワークの学習ができるサービスInfraAcademyを運営中。
RELATED POST