Skip to main content

任意のステップからのテストレポートへのエクスポート

概要

テスト結果をテストレポートアドオンステップにエクスポートを使用して、任意のステップからテストレポートをエクスポートできます。または、ファイルをエクスポートするように独自のスクリプトステップを構成することもできます。

テストレポート 便利な方法ですべてのテスト結果を表示できます。デフォルトでは、5つ ステップ テストレポートアドオンをサポートします。

  • iOS用Xcodeテスト

  • Androidユニットテスト

  • iOSデバイスのテスト

  • Android用の仮想デバイステスト

  • フラッターテスト

他のステップで生成されたテスト結果をにエクスポートするには Bitrise.ioにデプロイします ステップ、2つのオプションがあります:

テスト結果をテストレポートアドオンにエクスポートするステップを使用する

結果を自動的にエクスポートしないステップを使用している場合でも、テスト結果をテストレポートアドオンステップにエクスポートして、テスト結果がテストレポートアドオンに表示されるようにすることができます。

正しい構成で、ステップはアプリのリポジトリでテスト結果を見つけ、それらをエクスポートディレクトリに配置します。

スクリーンショットとその他の画像

ステップは、どちらかでテスト結果のみをエクスポートできます .xcresult また JUnit XML フォーマット。テスト結果が .xcresult ファイル、テストの一部として生成されたスクリーンショットが含まれ、テストレポートアドオンにエクスポートされます。

JUnit XML形式を使用する場合は、スクリーンショットとその他の画像を別々にエクスポートする必要があります。 スクリーンショットやその他の画像をテストレポートにエクスポートする

  1. でアプリを開きます ビットライズ

  2. クリック ワークフロー メインページのボタン。

  3. 追加します テスト結果をテストレポートアドオンにエクスポートする テストステップの後のステップ。

  4. の中に テストの名前 入力、テストの名前を設定します。テスト結果は、テストレポートアドオンでこの名前になります。

  5. の中に カスタムテスト結果が存在するパス 入力、テスト結果を見つけることができるパスを設定します。

    Managing an app's bitrise.yml configuration

    ここでフォルダを設定することをお勧めしますが、特定のファイルパスを設定することもできます。デフォルト値は、アプリのソースディレクトリです。パターンの例:

    • アプリのルートディレクトリがappの場合: app/build/test-results/testDemoDebugUnitTest/

    • テスト結果がアプリフォルダー内にあるが、アプリがルートディレクトリではない場合:./ app / build / test-results / testDemoDebugUnitTest /

  6. の中に テスト結果の検索パターン 入力し、テスト結果ファイルに一致するパターンを設定します。

    この検索パターンは、で設定されたパスのすべてのファイルとフォルダを検索するために使用されます カスタムテスト結果が存在するパス 入力。

    一致するものが複数ある場合、ステップは最初の一致をエクスポートし、警告をログに記録します。前の入力で特定のファイルパスを設定した場合は、ここで*を設定するだけです。

    パターンの例:

    • ベースパス内のすべてのファイルの照合: *

    • ベースパスの特定のディレクトリ内のすべてのファイルを照合します。 */build/test-results/testDemoDebugUnitTest/*

  7. の中に ステップのテスト結果ディレクトリ 入力し、パスが正しいことを確認してください。

    この入力の値は変更しないでください。これは、 Bitrise.ioにデプロイします ステップは、それらをエクスポートするためのテスト結果を探します。に設定する必要があります $BITRISE_TEST_RESULT_DIR 環境変数

  8. あなたが持っていることを確認してください Bitrise.ioにデプロイします ワークフローにステップインします。

    If your tests generate attachments, make sure the Step is of version 2.19.x or newer.

カスタムスクリプトを使用してテスト結果をエクスポートする

で独自のスクリプトを使用できます 脚本 テスト結果をエクスポートする手順。次のことを確認する必要があります。

  • テスト結果はJUnitXML形式です。

  • 結果を$ BITRISE_TEST_RESULT_DIRに配置します。これは、正しいパスを指す環境変数です。

  • あなたは test-info.json 各テスト結果のサブディレクトリにあるファイル。

NS test-info.json ファイル

NS test-info.json ファイルには、テスト名が定義されている必要があります。各テスト結果には独自のテスト結果が必要です test-info.json ファイル。 test-nameの値は、[テストレポート]ページに実行されたテストの名前として表示されます。

  // Test Name ... { "test-name":"My first test" }

テスト結果をエクスポートするためのスクリプトの例を次に示します。

#!/bin/env bash
set -ex

# Creating a sub-directory for the test run within the BITRISE_TEST_RESULT_DIR:

test_run_dir="$BITRISE_TEST_RESULT_DIR/result_dir_1"
mkdir "$test_run_dir"

# Exporting the JUnit XML test report:

cp "MY/TEST/REPORT/XML/FILE/PATH.xml" "$test_run_dir/UnitTest.xml"

# Creating the test-info.json file with the name of the test run defined:

echo '{"test-name":"MY TEST RUN NAME"}' >> "$test_run_dir/test-info.json"

すべてがうまくいけば、あなたはであなたのテスト結果を見ることができるはずです テストレポート ページ。

スクリーンショットやその他の画像をテストレポートにエクスポートする

Theテスト結果をテストレポートアドオンにエクスポートする ステップは、テスト結果ファイルをにエクスポートすることしかできません Bitrise.ioにデプロイします 結果の2つの形式をサポートするステップ:

.xcresult テスト実行中に生成されたファイル、スクリーンショットはテスト結果の一部です。そのため、これらはテストレポートアドオンにエクスポートされます

JUnit XML 形式を使用していて、スクリーンショットやその他の画像をエクスポートする場合は、 できません。 を使う テスト結果をテストレポートアドオンへエクスポート ステップ 1。

結果の形式に応じて、レポートにスクリーンショットを追加するには:

xcresult

ユニット XML

  1. ワークフローを開きます。

  2. を追加 テスト結果をテストレポートアドオンにエクスポート テスト結果を生成するステップの後のステップへ。

    ステップの設定方法の詳細については、を参照してください。 テスト結果をテストレポートアドオンにエクスポートするステップを使用する

  1. ワークフローを開きます。

  2. を追加 スクリプト テスト結果を生成するステップの後のステップ。

  3. 結果とスクリーンショットの両方をエクスポートするカスタムスクリプトを作成します。

    両方をエクスポートするスクリプトは同じでなければなりません スクリプト ステップ 1、そして必要なのは test-info.json テスト実行に関する必要な情報を含むファイル: カスタムスクリプトを使用してテスト結果をエクスポートする

  4. スクリプトを使用して画像を配置します $BITRISE_TEST_RESULT_DIR フォルダー。

    画像とテスト実行の関連付け

    そのテスト実行のディレクトリにイメージを配置することにより、イメージを特定のテスト実行に関連付けることができます。その場合、画像は特定のテスト実行のすべてのテストスーツの下に表示されます。

    例1 画像をエクスポートするスクリプト
    #!/bin/env bash
    set -ex
    
    # Creating a sub-directory for the test run within the BITRISE_TEST_RESULT_DIR:
    
    test_run_dir="$BITRISE_TEST_RESULT_DIR/result_dir_1"
    mkdir "$test_run_dir"
    
    # copying the image:
    
    cp "MY/TEST/SCREENSHOTS/screenshot.png" "$test_run_dir/screenshot.png"