ツール:Redmine

ツール:Redmine

このトピックでは、TestRail を Redmine と統合する方法について説明します。TestRail と Redmine を統合するには、現在 4つの方法があります。

  • 欠陥 URL を使用してテスト結果を Redmine にリンクする
  • Redmine 用の欠陥プラグインを使用して Redmine の課題をプッシュ/検索する
  • 参照 URL を使用してテスト ケースを Redmine にリンクする
  • Redmine 用参照プラグインを使用してテスト ケース、テスト ラン、マイルストーンなどの TestRail エンティティの参照フィールドで Redmine の課題を検索する

リストされている統合オプションをすべて使用する必要はなく、統合を他のツールと組み合わせることができます。統合の設定には通常数分しかかかりません。このガイドでは、統合の設定方法と機能について説明します。

欠陥 URL

欠陥 URL は、TestRail に Redmine インスタンスへのアクセス方法を知らせるために使われます。URL には 2 つのタイプがあります。表示 URL と追加 URL です。

欠陥表示URL は、欠陥 ID に基づいて Redmine へのリンクを生成するために使用されます。つまり、ID をクリックするだけで Redmine で課題を開くことができます。

欠陥追加 URL は、Redmine の課題作成画面へのリンクを生成するために使用されます。URL を設定すると、テスト結果の追加ダイアログの欠陥フィールドの隣およびTestRail の任意の場所から欠陥をプッシュ機能の「欠陥」メニューに新しく追加リンクが表示されます。このリンクを使用すると、Redmine の新規課題フォームにジャンプして新しいバグをレポートできます。

[追加] リンクを使用すると、Redmine の新規課題の ID をコピーし、TestRail 内の任意の欠陥または参照フィールドにその ID を入力できます。

[管理] > [統合] で TestRail でグローバルに使用する Redmine の URL を設定するか、任意のプロジェクト内でプロジェクトごとに Redmine の URL を設定します。アドレスを設定するには、次のサンプル URL を使用します。

Redmine installation
Defect View Url: http://your-server/issues/%id%
Defect Add Url:  http://your-server/projects/<projectid>/issues/new

参照 URL

参照 URL は、上で説明した欠陥 URL と同様の方法で実装されています。主な違いは、参照 URL はさまざまな TestRail エンティティの (欠陥フィールドではなく) 参照フィールドに使用されるという点です。

参照表示URL は、上記の欠陥表示 URL と同様の方法で設定され、参照フィールドに入力された ID に基づいて Redmine への直接リンクを生成するために使用されます。

参照追加 URL も、上記の欠陥追加 URL と同様の方法で設定されます。URL を設定すると、TestRail インスタンスまたはプロジェクトの参照フィールドの隣に新しく [追加] リンクが表示されます。このリンクを使用すると、Redmine の新規課題の ID をコピーし、TestRail 内の任意の欠陥または参照フィールドにその ID を入力できます。

参照プラグインが設定されている場合、参照 ID の上にマウス ポインターを置いて TestRail から直接課題の詳細を参照することもできます。欠陥プラグインおよび参照プラグインの使用および設定方法については、以下をお読みください。

欠陥プラグイン

欠陥プラグインは、より深いレベルのバグ追跡システムとの統合を実装するために使用できます。TestRail には、すぐに使える Redmine 欠陥プラグインが付属しています。欠陥プラグインを設定するには、 [管理] > [統合] を選択し、[欠陥プラグイン] ドロップダウン リストから [Redmine] を選択します。次のステップは、[設定] フィールドで、必要なすべての接続設定を設定することです。オプションとして、[管理] > [プロジェクト] でプロジェクト固有のプラグインおよび構成設定を指定できます。

欠陥プラグインが設定されると、[結果の追加] ダイアログの [欠陥] フィールドの横に新しく [プッシュ] リンクが表示されるようになります。リンクをクリックするとポップアップ ダイアログが開き、TestRail を離れることなくバグ レポートを Redmine にプッシュできます。テスト結果が追加されている場合、課題 ID の上にマウス カーソルを合わせると、Redmine の課題に関する情報やステータスの詳細が表示されたウィンドウが開きます。

注意:欠陥プラグイン統合を利用するには、まず Redmine の [管理] > [設定] > [API] > [RESTによるWebサービスを有効にする] で REST API を有効にする必要があります。

レガシーモード

バージョン 1.3 より前の Redmine を使用している場合は、欠陥プラグインのレガシー モードを有効にし、手動でプロジェクト カテゴリとトラッカーを設定する必要があります。これは、古いバージョンの Redmine にはカテゴリおよびトラッカーのリストを取得する API メソッドがなかったため、これらの情報を TestRail で設定する必要があるためです (または Redmine をアップグレードしてください)。それには、([管理] > [統合] の下にある) [設定] フィールドの [connection] セクションに [legacy] オプションを追加してレガシー モードを有効にします。

[connection]
..
mode=legacy

その後、次のセクションを追加して、トラッカーおよびプロジェクト カテゴリも追加する必要があります。

; tracker_id=tracker_name
[trackers]
1=Defect
2=Requirement
3=Support

(etc...)

; project_id.category_id=category_name
[categories]
1.1=User Interface
1.2=Backend
1.3=Documentation

上記で指定したのと同じ形式を使用します。カテゴリの場合は、各エントリのキーとして project ID と category ID を指定する必要があります。

カスタマイズ

Redmine 欠陥プラグインは、標準的な Redmine 構成と連携するよう構築されています。プッシュ ダイアログや欠陥 ID の上にマウス ポインターを置いたときに表示されるフィールドをカスタマイズできます。[push.fields] または [hover.fields] セクションで事前設定済みのプッシュ フィールドおよびホバー フィールドを「オン」または「オフ」に設定したり、セクションでのフィールドの順序を変更することで表示順序を変更したりできます。

title フィールドなどの一部のフィールドは、TestRail と Redmine の両方で必須であるため、常に有効であり、これらのセクションには表示されない場合があることに注意してください。

Redmine 欠陥プラグインはフィールド プロパティの変更に加えてカスタム フィールドをサポートしています。

フィールドを有効または無効にすることに加えて、フィールドごとに追加のオプションを変更することも可能です。それには、[push.field.description]のようなセクションを定義して、追加オプションを指定します。

[push.field.description]
label=Detailed Description
required=true

オプションの説明については、以下を参照してください。

オプション 説明
label [欠陥のプッシュ] ダイアログでのフィールドの表示名を指定します (カスタム フィールドの場合は必須)。
size フィールドをコンパクト フィールド ( compact ) として表示するか、ダイアログの全幅を使用する ( full ) かを指定します。
remember 次回 [欠陥のプッシュ] ダイアログを開いたときに、以前にこのフィールドで選択した値を記憶して復元するかどうかを指定します。
required このフィールドが必須かオプションか、またユーザーが [欠陥のプッシュ] ダイアログでこのフィールドに値を入力する必要があるかどうかを指定します。
type このフィールドのタイプを指定します。サポートされているフィールド タイプのリストについては、下記のカスタム フィールドを参照してください (カスタム フィールドの場合は必須)。

カスタム フィールド

上記のアプローチを使用して、カスタム フィールドを TestRail の [欠陥のプッシュ] ダイアログに追加することもできます。それには、 [push.fields] セクションに次のような行を追加してフィールドを追加します。

[push.fields]
...
description=on
customfield_11002=on

カスタム フィールドは customfield_<id> と指定します。そして、[field.settings.customfield_<id>] セクションを追加します。ツールにデータをプッシュ/ツールからデータを取得するために、このセクションは必須です。次は、カスタム フィールド設定の例です。

[field.settings.customfield_<field_name>]
label=Customer
size=compact
type=dropdown
required=true

以下のフィールド タイプがサポートされています。

フィールド タイプ 説明
dropdown ユーザーが複数のオプションのうちの 1 つを選択できるドロップダウン リスト
multiselect ユーザーが複数の定義済みオプションを選択
string 最大 250 文字の小さなフリーテキスト フィールド
text 実用上サイズ制限のない大きなフリーテキスト フィールド

添付ファイル

Redmine 欠陥プラグインは、Redmine への添付ファイルのサブミットもサポートしています。このフィールドをオンまたはオフにできますが、カスタマイズはできません。1 つまたは複数の添付ファイルを Redmine にサブミットするには、プッシュ ダイアログの添付ファイルまたは説明エリアにファイルをドラッグするか、エリアをクリックしてファイル システムから添付ファイルを選択します。

参照プラグイン

参照プラグインを利用すると、テスト ケース、テスト ラン、マイルストーンなどの TestRail エンティティの参照フィールドに入力された ID から追加の情報を取得できます。参照プラグインは、欠陥プラグインの設定と同じように、統合設定の [参照] タブで設定します。

プラグインは参照 ID のホバリングもサポートしていますが、参照フィールドではプッシュ ダイアログはサポートされません。上で説明しているように、リンクのホバリングで表示されるフィールドをカスタマイズしたり、カスタム フィールドを追加することもできます。

すでに Redmine 用の欠陥プラグインが設定されている場合、欠陥プラグインの [connection] および [hover.fields] セクションを参照プラグインの設定にコピーできます。あるいは、参照プラグインと欠陥プラグインで異なるフィールドを表示することもできます

その他のカスタマイズ

TestRail はカスタム欠陥プラグインもサポートしています。TestRail Server を使用している場合、欠陥プラグインをさらにカスタマイズし (または独自のプラグインをビルドし)、他のフィールド タイプやデータをサポートできます。詳しくはこちらを参照してください。