ページを選択

概要とインストール

TestRail CLI は、任意の JUnit 形式の XML ファイルから簡単に自動テストの結果を TestRail アップロードできるコマンド ライン インターフェイス ツールです。

概要

TestRail CLI を使用すると、ほぼどのようなテスト自動化ツールまたはフレームワークの自動テストの結果でも解析できます (ツールが JUnit 形式の XML ファイルでテスト結果をエクスポートできる場合)。TestRail CLI で使用可能なレポートを簡単に生成できる一般的な自動化フレームワークの例として以下が挙げられます。

    • Cypress.io
    • Playwright
    • JUnit
    • TestNG
    • NUnit
    • Pytest
    • Robot Framework

コマンド ラインから直接 JUnit 形式のテスト結果を解析して TestRail にアップロードするか、Jenkins、GitLab CI、GitHub Actions、またはその他の CI ツールで自動化されたビルド パイプラインの一部として CLI を実行することで、API の呼び出しやテスト結果のアップロードに関するその他の技術的詳細にわずらわされることなく、テスト コードの作成に集中できます。

TestRail CLI は GitHub にホストされたオープン ソースのプロジェクトであり、誰でも課題を作成したり、さらに新機能や改善を実装するコードを開発したりといった貢献を行うことができます。

さまざまなフレームワークのテスト自動化プロジェクトのサンプルについては、GitHub の自動化フレームワーク統合プロジェクトを参照してください。

TestRail CLI のインストール

TestRail CLI は、テスト結果のアップロードに関してはプログラミング言語を意識する必要はありませんが、ツール自体は Python で開発されており、パブリックな Python Package Index (PyPI) からインストールできます。マシンに TestRail CLI をインストールしたり、エージェントをビルドしたりする場合、OS に合った Python 3.10.4 インストーラーをダウンロードしてインストール ウィザードの指示に従い、pip もインストールすることを推奨します。正常にインストールされたことを確認するには、コマンド ラインから python --version および pip --version コマンドを実行します。すると、バージョンが出力されます。

Python のインストールが完了したら、TestRail CLI のインストールは、次の 1 行をシステムのコマンド ラインで実行するか、ビルド パイプラインでスクリプトに追加するだけです。

$ pip install trcli

install コマンドが正常に実行されると、trcli コマンドを使用して直接 TestRail CLI を呼び出すことができるようになり、次の出力が表示されます。

$ trcli
TestRail Connect v1.4.0 
Copyright 2021 Gurock Software GmbH - www.gurock.com
Supported and loaded modules: 
- junit: JUnit XML Files (& Similar)

TestRail インスタンスの設定

TestRail CLI を使用する前に、TestRail インスタンスで API を有効化する必要があります。[管理] > [サイト設定] にアクセスして [API] タブをクリックし、[API の有効化] オプションをオンにします。詳細については API 入門ページを参照してください。

テスト自動化ワークフロー

テストを自動化する際、さまざまな方法でテスト管理にアプローチできます。コードで直接テスト設計を行うことを選択する (「コードファースト」アプローチ) チームもあれば、まず、TestRail のようなツールを使って、自動化コードの外でテスト ケースを文書化してからテスト コードを実装し、特定のテストにマッピングすることを選択する (「仕様ファースト」アプローチ) チームもあります。

TestRail CLI には、これらの両方のアプローチをサポートする仕組みがあります。TestRail にテスト ケースを追加せずに、最初からコードでテストを作成する場合、TestRail CLI は、新規自動テストのテスト結果を最初にアップロードしたとき、テスト ケース リポジトリを更新して新規自動テストを作成します。

すでに TestRail で文書化されているテスト ケースに基づいてテストを自動化する場合、自動化コードと TestRail のテスト ケースをリンクして、テスト ケースに自動テストの結果を登録することができます。

実用的な例として、GitHub の Cypress テスト自動化プロジェクト を参考にできます。このプロジェクトには、両方のワークフロー向けに用意されたテスト スイートとともに、使用手順が含まれています。

コードファースト
仕様ファースト

コードファースト

通常、コードで直接テスト設計を行うチームが採用するアプローチです。つまり、チームはテスト コードで直接テスト ケースを設計し、テスト スクリプトを実装し、テスト管理ツールの外で実行を管理します。

利点:

    •   テスト ケースの自動生成
    •   テスト ケースの自動マッピング
    •   コードでだけテスト ケースを管理
    •   コードで直接テスト設計を行なう、より技術的なチームに最適

欠点:

    •   マッピングは壊れやすく、自動化プロジェクトの構造やテスト名が変更されると、壊れる可能性があります。
    •   あまり経験がないチームでは、テスト ケースが重複する可能性があります。
    •   TestRail に既存のテスト ケースがある場合、マッピングを作成するために追加の時間が必要です。

TestRail CLI – コードファーストページにこのアプローチの実装方法の詳細があります。

仕様ファースト

自動テスト コードを実装する前にテスト ケースを設計するというアプローチです。このワークフローでは、まず TestRail でテスト ケースの概略と設計を作成するため、さまざまなフォーマットでテスト ケースを作成し、レビュー、カテゴリ分け、優先順位付けを行って、自動化するテスト ケースを選択できます。

利点:

    •   自動化するべきテスト ケースの優先順位を付けるのに役立ちます。
    •   コードの構造が変化した場合もケースのマッピングが保たれます。
    •   自動作成によってテスト ケースが重複する可能性が減ります。
    •   詳細なテスト ケースの設計と計画が可能です。
    •   整備されたテスト文書が必要なチームに適しています。

欠点:

    •   コードにケース ID が記載されていないテスト ケースは作成されず、結果もサブミットされません。
    •   手作業でマッピングする必要があり、面倒でエラーが発生しやすくなります。

TestRail CLI – 仕様ファーストページにこのアプローチの実装方法の詳細があります。

CLI リファレンスおよび使用例

すべての TestRail CLI パラメーターについて知るには、trcli --help および trcli parse_junit --help コマンドを使用するか、TestRail CLI – リファレンスページを参照します。また、TestRail CLI – 使用例ページでは、Test Rail CLI で使用できるオプションの多くの使用例を参照できます。