こんにちは、フルスタックエンジニアのryuです。
今回の記事では、cypressでテストの順序を設定する方法について解説します。複数の自動テストを指定した順序で実行してみましょう。デフォルトでは、ファイル名の順で実行されます。ファイル名に数値を付けるか、cypress.jsonにファイルの実行順を設定します。
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に関連する記事はこちらで解説しています。
- Cypressを導入してUIの自動テストを実装する方法解説!【自動テストツールを使ってみよう】
- cypressの書き方とは?様々なUIテストをcypressでコーディングしてみよう
- cypressでファイルアップロードをテストする方法【cypress-file-uploadを使うと簡単に実装できる】
自動テストについてさらに勉強したい方はこちらの参考書がオススメです。