脱Excel! TestLinkでアジャイルにテストをする:エンジニアがお薦めする 現場で使えるツール10選(5)(2/6 ページ)
ITエンジニアの業務効率を改善するために、現役エンジニアが実際の現場で利用している便利ツールを、10回にわたり紹介します。
【4】TestLinkの運用例
TestLinkとアジャイル開発を組み合わせると、下記の運用フローになる。
4−1.プロジェクト、ユーザー、ロールの初期設定を行う
4−2.テスト仕様へテストケースを一括インポートする
4−3.テスト計画を作成し、テストケースやテスターをアサインする
4−4.ビルドを作成後、テスト実行する
4−5.テスト実施の集計結果を表示する
4−6.要件カバレッジの機能を使う
4−7.ビルドをCloseして、テスト仕様書を出力する
4−8.TestLinkCnvMacroでテスト実績を分析する
以下、TestLinkの運用方法を上記の順に説明する。
【4−1】プロジェクト、ユーザー、ロールの初期設定を行う
【4-1−1】プロジェクト
まず、テスト対象のプロジェクトを登録する。実際のプロジェクト単位に登録すればよいだろう。例えば、開発チーム内に複数のサブチームが存在する場合は、サブチームごとにテストプロジェクトを作って管理する運用もできる。
【4−1-2】ユーザー
ユーザー(実際はテスター)は下記で一覧できる。TestLinkでは、ユーザーはプロジェクトを横断してアサインできる。
【4−1−3】ロール
ユーザーにはロールがあり、「管理者」「リーダー」「シニアテスター」「テストデザイナー」「テスター」などが選択できる。プロジェクトに応じてロールをカスタマイズすればよいだろう。
【4−2】テスト仕様へテストケースを一括インポートする
【4−2−1】TestLinkCnvMacroでテストケースを一括インポートする
そもそもTestLinkの運用が難しい原因は2つある。1つ目は、既存のテスト仕様書にある数千から数万のテストケースをTestLinkへどのようにインポートするか、という点だ。
最も手軽な解決手段は、TestLinkCnvMacroでテストケースをXMLへ変換し、TestLinkへインポートすることだ。つまり、Excelでテストケースをあらかじめ作成しておき、TestLinkCnvMacroへコピーしてXMLへ変換する手順になる。
一度インポートしたテストケースを仕様変更などの理由で修正したい場合、TestLinkCnvMacroに取り込んで修正した後、上書きインポートすることもできる。TestLinkCnvMacroを使った概念イメージは下記のとおり。
【4−2−2】TestLinkのテストケースの形式
2つ目は、既存のテストケースをTestLinkのテストケースにどのように合わせるか、という点だ。TestLinkのテストケースの概念を実際のテストケースの例(結合テスト・システムテスト)に合わせて説明しよう(参考:簡易マニュアル - TEF有志によるテスト管理システムTestLink日本語化プロジェクト)。
TestLinkの「テストケース」とは、TestLink上でテスト作業を表す最小単位である。テストケースは下記の項目を持つ。
タイトル | ユーザーが手入力したテストケースの番号。TestLinkでは、テストケースIDが別の概念としてユニークに採番される。 |
---|---|
概要 | テストケースの概要。 |
ステップ | テストの事前条件とテスト手順。 |
期待値 | テストの期待結果や事後条件。 |
キーワード | テストケースのタグのような属性。要件管理IDを振る時もある。テスト実行画面でフィルタリングでき、テスト結果画面に集計表示される。 |
カスタムフィールド | 管理者が追加したテストケースの属性。テスト実行画面に表示されるが、テスト結果画面では集計対象にならない。 |
また、テストケースを階層化する概念として「テストスイート」がある。TestLinkのテストケースの形式に既存のテスト仕様書を合わせるにはテストスイートを上手に使って階層化すればよい。例えば、テストスイートにテストの分類項目(工程、画面、機能など)、テストの目的などを入れるとよいだろう。
【4−2−3】結合テストの場合
例えば、結合テストのように、業務シナリオをベースにテストする場合は下記のように作成している。
プロジェクト | プロジェクト1 |
---|---|
テスト計画 | 結合テスト(注:イテレーションの単位) |
ビルド | 9月リリース |
テストスイート1 | 結合テスト |
テストスイート2 | カート画面 |
テストスイート3 | 数量 |
テストスイート4 | 数量の入力チェックを確認する |
テストケース―タイトル | 1―1 (注:テスト仕様書のテストケースID) |
テストケース―概要 | 1.商品を注文してカート画面に遷移する。 2.カート画面の数量に値を変更して入力する(例:半角英字、全角文字、半角カナ、0以下の数値) |
テストケース―ステップ | 次へボタン押下 |
テストケース―期待値 | カート画面でエラーメッセージを表示する(例:半角数字を入力してください) |
キーワード | 1−1−1(注:要件管理ID。要件リスト−要件名と同じ値にする) |
例 4−2−3 プロジェクト1のカート画面のテストケース(結合テスト) |
筆者は、「テストケース−概要」にテストケースの事前条件、「テストケース−ステップ」はテスト手順を詳細に書き、事前条件とテスト手順を分離する運用にしている。理由は、特に業務シナリオのテストケースでは、事前条件とテスト手順は複雑になりがちなので、分離した方がテストケースは読みやすいからだ。
さらに、テストデータやテスト項目の構造を表形式(tableタグ)や個条書き(liタグ)などで書くとさらに読みやすくなるだろう。
上記のやり方で、TestLinkの形式に合わせたテストケースをExcelで作り込んで、TestLinkCnvMacroでXML出力し、TestLinkにインポートする運用になる。テストスイートでテストケースを上手に分割すると、TestLinkのテスト実行画面でテストスイート単位のテストケース数を表示してくれるので便利である。
Copyright © ITmedia, Inc. All Rights Reserved.