Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CircleCIでFlakyなテストを再実行する_potatotips#83

kako351
July 21, 2023

 CircleCIでFlakyなテストを再実行する_potatotips#83

kako351

July 21, 2023
Tweet

More Decks by kako351

Other Decks in Technology

Transcript

  1. 設定①: テスト結果のアップロード store_artifactsを使用する方法 - run: name: Save test results command:

    | mkdir -p ~/test-results/junit/ find . -type f -regex ".*/build/test-results/.*xml" -exec cp {} ~/test-results/junit/ \; when: always - store_artifacts: path: ~/test-results destination: circleci-docs
  2. 設定①: テスト結果のアップロード store_artifactsを使用する方法 - run: name: Save test results command:

    | mkdir -p ~/test-results/junit/ find . -type f -regex ".*/build/test-results/.*xml" -exec cp {} ~/test-results/junit/ \; when: always - store_artifacts: path: ~/test-results destination: circleci-docs JUnitのテスト結果はそれぞれの モジュール内にxmlファイルが作られるのでま とめて ~/test-resultsにコピーする
  3. 設定①: テスト結果のアップロード store_artifactsを使用する方法 - run: name: Save test results command:

    | mkdir -p ~/test-results/junit/ find . -type f -regex ".*/build/test-results/.*xml" -exec cp {} ~/test-results/junit/ \; when: always - store_artifacts: path: ~/test-results destination: circleci-docs
  4. 設定①: テスト結果のアップロード store_test_resultsを使用する方法 - run: name: Save test results command:

    | mkdir -p ~/test-results/junit/ find . -type f -regex ".*/build/test-results/.*xml" -exec cp {} ~/test-results/junit/ \; when: always - store_test_results: path: ~/test-results
  5. 設定②: circleci tests runを使ってテスト実行 次にcircleci tests runを使ってテストを実行する必要があります。 - run: name:

    Run unit test command: | set -e TEST_FILES=$(circleci tests glob " **/src/test/java/*.kt") echo "$TEST_FILES" | circleci tests run \ --command="./gradlew testDebugUnitTest" \ --verbose --split-by=timings --timings-type=classname
  6. 設定②: circleci tests runを使ってテスト実行 次にcircleci tests runを使ってテストを実行する必要があります。 - run: name:

    Run unit test command: | set -e TEST_FILES=$(circleci tests glob " **/src/test/java/*.kt") echo "$TEST_FILES" | circleci tests run \ --command="./gradlew testDebugUnitTest" \ --verbose --split-by=timings --timings-type=classname circleci tests コマンドでテストファイルのグロ ブします
  7. 設定②: circleci tests runを使ってテスト実行 次にcircleci tests runを使ってテストを実行する必要があります。 - run: name:

    Run unit test command: | set -e TEST_FILES=$(circleci tests glob " **/src/test/java/*.kt") echo "$TEST_FILES" | circleci tests run \ --command="./gradlew testDebugUnitTest" \ --verbose circleci tests run のcommandオプションに テストの実行コマンドを指定します。 verboseオプションでデバッグメッセージが出 るようにします。