ソフトウェアの品質を学びまくる2.0

ソフトウェアの品質、テストなどについて学んだことを記録するブログです。

テスト管理ツール「PractiTest」を触りながら勝手にテスト管理を語る - その5

 「その4」(テスト実行)の続きです。*1

www.kzsuzuki.com

イシューの作成

 ステップで失敗した場合には、イシューを作成することができます。

f:id:kz_suzuki:20191124192737p:plain
「Fail & Issue」から遷移できる

 イシュー作成画面に遷移すると、タイトルや概要が自動的に埋められています。

f:id:kz_suzuki:20191123070518p:plain
テストケースからステップを自動引用している

 作成時点では、Descriptionの他、PriorityとTagsあたりを入力しておけばよいでしょう。

 ただ、イシューまでPractiTestで管理するかどうかは考える必要があります。一つのシステム内で完結するのはメリットではありますが、すでに安定しているチケット運用を大きく変えることになるとしたら厳しいでしょう。PractiTestは、RedmineやJIRAなどのチケット管理システムとの連携が可能なので、運用の継続性を考えると、連携機能を使うのがよさそうです。

他のチケット管理システムとの連携

 PractiTestの大きな特徴の一つが、他のソフトウェア管理システムとのIntegration(以降はあえて「連携」と呼びます)でしょう。
 連携のページから選べるインシデント管理システム(ここではBugtracker)は、かなりの数にのぼります。

f:id:kz_suzuki:20191124073930p:plain
インシデント管理システムだけでもかなり多い

 この記事では、Redmineとの連携を試してみましょう。
 連携先として、Redmineのデモサイトを利用させていただきます。運営者である、ファーエンドテクノロジー株式会社さんに感謝。

一方向と双方向の連携

 公式サイトによると、Redmineへの連携は、One-way(一方向)とTwo-way(双方向)の二つがあります。
 ざっくりいうと、一方向では、Redmineチケットの情報をPractiTestに登録しておくことで、PractiTestからRedmineにたどることができます。逆に言うとそれだけです。
 双方向は、Redmineチケット側の変更(の一部)が、PractiTest側にも反映されます。また、イシューの集計などは、双方向でないと反映されません。一方向でもチケットはインスタンスに関連づいているのですが、一方向ではイシューの件数としてカウントされないということです。*2

 まずは一方向から確認してみましょう。これが設定画面です。

f:id:kz_suzuki:20191124190456p:plain
設定する項目はこれだけ。一方向では「PT Field id」も不要

 イシューの作成方法は変わりません。「Fail & Issue」のリンクをクリックすると、デフォルトではPractiTest組み込みのイシュー作成画面に行くところ、設定後はRedmineのチケット新規作成にリダイレクトされる感じです。使っているブラウザがRedmineのユーザアカウント/パスワードを記憶していれば、そのままチケット編集ができます。PractiTest自体に、Redmineの認証情報を教える必要はありません。

f:id:kz_suzuki:20191124190802p:plain
見慣れたRedmineの画面

f:id:kz_suzuki:20191124190821p:plain
「伊藤 健太」さんは、このデモ用Redmineのダミーユーザかな・・・。

 加えて、PractiTest→Redmineの紐付けも手動で行います。上の例だと、チケットIDは22241なので、「Link existing issue」から紐付けを設定します。*3

f:id:kz_suzuki:20191124190928p:plain

 これによって、インスタンスや、その元であるテストケースに対し、イシューが関連付けられます。

f:id:kz_suzuki:20191124191450p:plain
2件紐づいた様子

 ただ先に述べた通り、一方向連携の場合は、Redmineで作成したイシューの件数は、PractiTest側で集計されない。

f:id:kz_suzuki:20191124191636p:plain
イシューを集計してくれない・・・

 こうなってしまう。ダッシュボード上も、0件扱いになります。
 片方向は設定が楽な分、PractiTestとRedmineの機能をフルに生かせない感じですね。

 公式ヘルプによると、双方向では以下のように説明されています。

Two-Way integration – works like the one-way integration with Redmine and in addition, displays in PractiTest the bug’s subject and status as it appears in Redmine, and also allows Redmine to update PractiTest (via a dedicated plugin) whenever the subject or status are modified.
ーーー
一方向の連携に加えて、サブジェクトとステータスが、Redmineで表示されるのと同じようにPractiTest側でも表示される。さらに、サブジェクトとステータスが変更されたら、専用プラグインを通じてRedmineからPractiTestを更新する。

 一文目がちょっと不自然な訳なのですが、つまり「PractiTest側で定義していないようなステータスでも、Redmineで設定しているように表示するよ」ということなんでしょうね。
 でも何より重要なことって、上にも書いた通り、「PractiTestで集計は、一方向だとできない、双方向ならできる」ことだと思います。Redmineにいくら起票しても、テストを一元管理するためのPractiTestに反映できないのでは意味がない。やはり双方向を使うべきでしょう。

 しかし! ぼくにはPractiTest専用プラグインを追加できるRedmineがない。きみに聴かせる腕もない
 一応PractiTestヘルプに、「トライアルで使えるRedmine環境ありませんかね・・・?」ってダメ元で聞きましたが、「ごめんね、ないんだ。自社の人に聞いてくれないか?」と、至極当然のご回答をいただきました。

 非常に中途半端な内容ですが、イシュー作成については以上です。
 「その6」のインポート・エクスポートに続きます。

www.kzsuzuki.com

*1:<メモ>「イシュー」と「チケット」をきれいに使い分けていないので見直す。

*2:PractiTestのJoelさんが直接ヘルプしてくださいました。感謝。

*3:逆に言うと、PractiTestを通じて作成したチケットでなくても、関連付けることができるようです。