CAT とRedmineを連携してみた

テスト管理ツールCATのサポート担当の坂本です。

CATはテスト管理ツールで、テストの管理・実行、テストで発生した課題の管理、課題の分析をすることでソフトウェアの品質向上を目指しています。CATには課題管理機能は内包していますが、多くの開発現場では、既に課題管理ツールとして、利用している場合が多いと思います。CATはテストと課題を同時に管理することで真価を発揮します。CATの外部BTS連携機能を利用することで、既存の課題管理ツールと連携しつつ、CATの機能をフル活用できます。

本記事では、CATと連携可能なRedmineを例として、連携する際に注意するところ(設定についてお問い合わせが多い点、初めて連携したときにわかりずらかった点)についてご説明します!



CATとRedmineを連携するとできること

(1)CATの分析機能が使える

テスト終了後、品質の評価に利用できる課題分析機能が利用できます。
機能別・テスト環境別・開発者別の課題分析や、信頼度成長曲線が利用可能です。

[CATの開発者毎の起票状況のグラフイメージ]
image008

(2)障害収束曲線が使える

CATには進捗管理機能があり、テスト消化曲線と障害収束曲線を確認することが可能です。Redmineと連携することで課題の発生推移をテストの消化を合わせて確認することが可能です。。

[障害収束曲線のイメージ図]
ProgressSummary_Project-58_Process--1_20140526_20140613


(3)テストケースと課題を紐付け情報を管理できる

CATはテスト実行時に実行画面から障害報告をすることができます。Redmine連携時にはRedmineの課題登録画面を開きます。初期値として、CATのテストケースURLや障害管理に必要な情報等を登録することが可能です。

また、Redmine側からでもCATのケースのURLをクリックすると実際のテストケースへ遷移します。CATとRedmineを双方向でいききでることで開発者・評価者間のコミュニケーションコストを下げることができます。

[連携時のRemineのチケット画面]
image001

[課題と紐付いているときのテスト実行画面]
image004



[CATの開発者毎の起票状況のグラフイメージ]
image008

(4)CATとRedmineの連携機能の仕組み

Redmine連携とは、課題起票時の初期値設定機能と、Redmineで管理された課題の取込機能です。取込にはREST APIを利用します。REST API経由でRedmineの値を更新することはありません。
※取込課題はカスタムクエリや、トラッカー等条件で絞り込むことが可能です

ケースと課題の紐付け情報は、CAT内で管理しているため、再度連携しても消えることはありません。

[RedmineとCATの連携イメージ図]
image010

[Redmine連携時にCATから起票する際のイメージ図]
image012

[Redmine連携時に課題一覧の取り込んだ際のイメージ図]
image014

このように、既存のテストの実行部分をCATに置き換えてRedmineを利用することが可能です。では、実際の連携例を元に接続方法を説明します。



実際に連携をしてみた

1.準備

・連携するRedmineのプロジェクト
・RedmineのホームURL
・プロジェクト識別子
・Redmineのユーザ(連携するプロジェクトの閲覧権限以上)のAPIキー
・APIキー
・CATと連携するRedmineのカスタムフィールド(実際に連携する場合は必要な物を用意ください)
  ・連携キー(書式:テキストフィールド)
  ・テスト仕様書名(書式:テキストフィールド)
  ・テストケースURL(書式:リンクタイプ)*1
  ・機能(書式:リスト<単数>)*2
  ・重要度(書式:リスト<単数>)*2
  ・開発者(書式:リスト<単数>)*2
    *1 Redmine 2.x系をご利用の方はリンクタイプがないため、
      テキストフィールドをご利用ください
    *2 RedmineとCATの選択肢の値が一致したものが表示されるため、
      値を統一化させてください。
・連携するCATのプロジェクト

すでにCATの課題をご利用されているプロジェクトを使う場合、連携前に作成した課題は、連携することにより課題が消えてしまうため。
外部BTSを試される場合は、新たにCATのプロジェクトを作成して、連携をお試しください。


2.Redmineとの接続設定をする

(1)外部BTS設定画面に遷移をする
①プロジェクトトップ画面から「プロジェクト設定」をクリックします。
image016

②プロジェクト設定にある「外部BTSの設定」をクリック
image018
③画面右上の「編集」ボタンをクリックします。
image020


(1) Redmineのプロジェクトの情報を入力する
① 外部BTSウィザード(1/6)の表示を確認します。
② 外部BTS連携をon にして、以下を入力します。
・モード:同期モード
・外部BTS:Redmine
・URL:RedmineのホームURLを入力
・APIアクセスキー:準備したユーザのAPIアクセスキー
・プロジェクト識別子:連携するプロジェクトの識別子
③ 入力後、「次へ」をクリックします。

Point:
外部BTSウィザード(1/6)で接続エラーになる場合は、
・入力値が間違っている
・連携ユーザプロジェクト参照権限を持っていない
・CATがRedmineに接続できない
上記いずれかの可能性があります。
入力値やユーザの情報を確認とあわせて、
Redmineでファイアーウォール設定やIP制限等接続に制限がありつながらない場合があるので、RedmineでIP制限を実施している場合はCATのIPを解除する必要があります。

image022

(2) 種別をマッピングする
① 外部BTSウィザード(2/6)の表示を確認します。
② Redmineトラッカーと連携する種別を選択します、
③ 「定義外」の欄にて連携設定していない種別があった場合にエラーメッセージを出すか選択します。
④ 入力後、「次へ」をクリックします。

Point:
種別、工程・ステータス(外部BTS設定ウィザード3/6で設定)の連携対象を絞り込むと、Redmineプロジェクトの特定の情報を取得することができます。
より取り込み対象を絞りこみたい場合はカスタムクエリを使って細かく絞り込んで取り込めます。

image024

(3) 工程、ステータス、優先度、重要度、機能、開発者をマッピングする
① 外部BTSウィザード(2/6)の表示を確認します。
② 工程、ステータス、優先度、重要度、機能、開発者を連携設定します。
③ 工程、ステータスについては設定されていないの取り込み方法の設定を「定義外」で設定をします。
④ 設定完了後「次へ」をクリックします。

Point:
■CATの工程と連携するRedmineのフィールドについて
多くの場合は、CATの工程とRedmineのバージョンが連携対象となることが多いですが、
カスタムフィールドと連携することも可能です。
■Redmimeのカスタムフィールドの連携について
「重要度」、「機能」、「開発者」と外部BTS設定ウィザード4/6で設定する「連携キー」、「仕様書名」、「テストケースURL」等のCATのカスタムフィールドマッピングはRedmineのカスタムフィールドと連携するためRedmineで課題が起票されていないと連携することができません、トラッカー毎にサンプルの課題を起票してから、連携してください。

image026
  
(4) 連携キー、仕様書名、テストケースURL、カスタムフィールドを連携して
「次へ」をクリックします。

image028

(5) エラーの通知設定を設定する
連携エラーが発生した際に、通知するメンバーを設定します。
設定後、次へをクリックします。

image030

(6) 設定情報の再確認および、登録します。

image032


3.実際に利用してみた

(1) テスト実行画面から課題を起票する

① 実行結果の下にある「障害報告」をクリックする
image034

② トラッカーを選択し、登録を押します。
image036

③ タイトルと概要を書く(テスト仕様書名やリンクは自動的にリンクされます。)
image038

連携設定でテスト仕様書名やURLを連携すると起票時に自動的に値を入力するため、起票時の障害が発生したテストケースの入力漏れを防止することができます。

(2) 起票した課題を確認する
CATの課題一覧に遷移し、確認した課題のタイトルをクリックします。

image040

Point:
Redmineとのデータ同期は1時間毎のため、起票したデータがCAT反映されていない場合があります。その場合、課題管理画面にある「連携更新」をクリックして手動で同期してください。

image042

Point:連携更新しても障害が部分的に取り込めていない
前述の設定時に、種別、工程、ステータスが連携対象外になっていて、定義外の設定を取り込まないにしていると、部分的に取り込めないような状態になります。
取り込めない課題を特定し、種別、工程、ステータスは連携対象になっているか確認ください。

(3) チケットから起票したテストケースへ遷移する
① Remineのチケット参照画面を表示してテストケースURLのリンクをクリックします。
image044

② クリックすると課題と関連したテストケースが表示されます。
※障害報告にあるバッジにマウスカーソルを合わせると紐付けた課題のリンクが表示され、クリックすると課題参照画面へ遷移します。
image004

(4) 機能分析を使ってみる
CATに種別毎の起票数がわかります。
必要な連携;機能連携、重要度連携
[機能分析イメージ]
image050

(5) メンバー分析(開発観点)を使ってみる
必要な連携:開発者連携、重要度連携
[メンバー分析(開発観点)イメージ
image008

(6) 信頼度分析を使ってみる
必要な連携;機能連携、重要度連携
※信頼度分析は連携前の情報については分析ができません

[信頼度分析イメージ]
image054


まとめ

CATの進捗管理機能や分析機能もほぼ利用できるのに、CATを導入してもRedmineの運用ほぼ変わりませんね。
Redmineをご利用でテスト管理ツールを探している方、
RedmineとCATを連携していて紹介した機能を使っていない方は是非おためしください。

CATを是非使いたいという方は無料トライアルがございますので
是非お申込みください!
https://www.catcloud.net/trialportal.html

<外部BTS連携について 参考>
マニュアル
https://www.catcloud.net/product_manuals.html

※CAT ユーザマニュアル – 活用編をクリックください
7.2 Redmineと連携する
<課題管理について 参考>
マニュアル
https://www.catcloud.net/product_manuals.html
※CAT ユーザマニュアル – 基礎編をクリックください
第3章 課題(障害・要望・問合せ等)を管理する


2018-02-15 | Posted in CATNo Comments » 
Comment





Comment