テスト管理ツール「TestRail」では、CSV、XML形式によるインポートに対応しています。既にExcelやスプレッドシートでテストケースを管理している場合は、それらのテストケースの資産をTestRailにインポートできます。テストケースが流用でき、TestRailを用いたテスト活動がすぐに始められます。
Excel/スプレッドシートからインポートする場合はCSV形式のインポートを利用します。インポートの際は、TestRailのカスタムフィールド作成やCSV形式への変換に伴うファイルの修正が必要となります。
インポートの流れ
インポートは以下の流れで行います。
- インポートの準備
- TestRailのカスタムフィールドの作成
- CSV形式への変換に伴うExcel/スプレッドシートの修正
- インポートの実施
- CSVファイルのTestRailへのインポート
本記事では「1.インポートの準備」について解説します。
TestRailのカスタムフィールド作成
カスタムフィールドの必要性
テストケースの中にはテストそのものの情報(手順や期待する結果など)以外にも優先度や機能、参照情報へのURLリンクといった様々な情報が含まれます。それらをTestRailに取り込む場合、情報の入力先としてカスタムフィールドが必要になります。
TestRailではテストケース用のフィールドとして、デフォルトで以下のものが用意されています。これ以外の情報を管理したい場合は、カスタムフィールドを用意する必要があります。
フィールド名 | 説明 |
タイトル | テストケースのタイトルです。 |
セクション | テストケースをグループ化するための概念です。 |
タイプ | テストケースのタイプです。選択肢を自由に編集できます。 |
優先度 | テストケースの優先度です。選択肢を自由に編集できます。 |
担当者 | Enterprise版でテストケースの承認に利用するフィールドです。承認者を指定します。 |
見積り | テストの実施にかかる時間の予測値です。 |
参照 | テストケースと要件を関連付けるフィールドです。要件IDを入力します。 |
自動化種別 | テストケースの自動化方法を選択するフィールドです。 Ranorex等のテストツールと連携する際に利用します。 |
前提条件 | テストの前提条件を記載するフィールドです。 |
手順 | テストの手順を記載するフィールドです。 |
期待する結果 | テストの期待する結果を記載するフィールドです。 |
手順(ステップ) | 「テストケース(ステップ)」テンプレートを利用する際に使うフィールドです。 1つのテストケースで複数の手順と期待する結果を記載します。 |
ミッション | 「探索的テスト」のテンプレートを利用する際に使うフィールドです。 テストで何をするのかを記載します。 |
ゴール | 「探索的テスト」のテンプレートを利用する際に使うフィールドです。 テストで何を成し遂げるのかを記載します。 |
BDD Scenarios | 「Behavior Driven Development」のテンプレートを利用する際に使うフィールドです。ビヘイビア駆動開発 (BDD) のシナリオを記載します。 |
カスタムフィールドの作成
カスタムフィールドは、「管理」 > 「カスタマイズ」 > 「ケース フィールド」タブより作成します。「+ フィールドの追加」ボタンを押してカスタムフィールドを追加します。
例として、「テスト分類」のカスタムフィールドを作成します。「ラベル」にはカスタムフィールドの名称、「説明」にはフィールドの説明を入力します。「システム名」にはデータベース上で扱うための文字列を入力します。
「タイプ」はカスタムフィールドの入力形式です。数値であれば「Integer」、リストであれば「Dropdown」等を選択します。詳細はオンラインマニュアルを参照してください。
初回のインポート後はTestRail上からテストケースを作成する機会が増えるので、フィールドの用途が決まっている場合は適したフィールドタイプを選択すると使いやすくなります。代表的な推奨タイプを以下に記載します。
用途 | 推奨タイプ |
数値のみが入力される | Integer |
WebサイトのURLなどの外部リンク | URL (Link) |
ファイルパス | String |
A/B/Cのうち一つを選択 | Dropdown |
A/B/Cのうち複数を選択 | Multi-select |
はい/いいえ、オン/オフなどの二者択一 | Checkbox |
「テスト分類」は「正常系」と「異常系」のどちらかを選択するフィールドであるため、タイプは「Dropdown」を選択します。オプションで選択肢と、どのプロジェクトで利用するかを選択し、「✔ フィールドの追加」をクリックするとカスタムフィールドの作成完了です。
CSV形式への変換に伴うExcel/スプレッドシートの修正
インポートの際、Excelやスプレッドシート固有の機能を使ってテストケースが作成されていると、CSVファイルへの変換が上手くいかない、TestRailへのインポートの際に意図した結果にならない、といった可能性があります。そのため、あらかじめファイルをインポートできる形式に修正する必要があります。
TestRailのテストケーステンプレート
TestRailには、例えばテストの種類に合わせてフィールドの表示を変更するといった目的で利用するテストケースのテンプレートが存在します。詳細はオンラインマニュアルを参照してください。
デフォルトで4つのテンプレートがありますが、そのうちよく利用されるのはテストケース (テキスト)、テストケース (ステップ)の2種類です。それぞれのテンプレートでファイルを修正する方針が異なりますので、各テンプレートへのインポートの原則と共通する注意点について記載します。
テストケース (テキスト)の修正原則
テストケース (テキスト)テンプレートへのインポートの場合、CSVファイルの1行が1ケースとして扱われるため、1行にテストケースとして必要な情報をすべて含める必要があります。下の図のように、複数行で1つのテストケースを記載すると上手くインポートできません。
また、Excelでは以降の行に同じデータが続くことを表現する際、下の図のように空白を利用することがあります。Excel上でテストを実施する場合はこれで意味が通じます。しかし、インポートする場合はその行は情報が欠如した状態になるのでセルを空白のままにしておくべきではありません。
以上の点を踏まえて、テストケース (テキスト)テンプレートにインポートするファイルは下の図のように修正しておく必要があります。
テストケース(ステップ)テンプレートの修正原則
テストケース (ステップ)テンプレートへのインポートの場合、手順と期待する結果を複数行に分けて記述します。下の図のように「タイトル列に値がある箇所を1ケースの開始」とみなします。
テンプレート共通のNG例:セルを結合する
結合されたセルが存在するExcelをCSVファイルに変換すると、その時点で結合が解除され、元々の値は1行目にしか存在しなくなります。下の左の図のように結合はせず、右の図のようにデータをコピーしてすべてのセルに値が存在する状態にしてください。
テンプレート共通のNG例:シートを複数に分ける
Excelファイル内に複数のシートが存在すると、CSVファイルに変換しても一つのシートしか変換されません。Excelには複数シートではなく一つのシートでテストケースを作成するようにしてください。もし分類が異なるためシートを分けておきたいという理由がある場合はファイルを分けて作成ください。
テンプレート共通のNG例:ヘッダー部を作成する
下の図のようにテストの方針や補足情報を記載したヘッダー部を作成することがあるかと思います。厳密に言うとヘッダー部を作成すること自体はNGではありませんが、テストケースとは別にフリーフォーマットで書かれている場合が多いため、インポート対象とはなりません。
ヘッダー部に書かれた情報については、新しく列を追加して各行に同じ値を記入する、もしくはTestRailのテストスイートやセクションの説明欄に転記することを推奨します。
まとめ
Excel/スプレッドシートのテストケースをTestRailにインポートする前の準備作業について解説しました。カスタムフィールドの用意とファイルをインポートできる形に修正する作業を行えば、うまくインポートすることができます。ファイルをTestRailにインポートする手順については別の記事でご紹介します。
実際にTestRailの画面を確認したい方は、以下のページより公開デモサイトをご利用ください。
関連する製品
テスト管理ツール TestRail
テストケースの管理やテスト結果の記録、チームでの情報共有など、Excelを使ったテスト管理の業務に限界を感じていませんか?TestRailはシンプルで使いやすいUIを提供し、テストにかかるさまざまな管理コストの削減に貢献します。
■ TestRailの特長 ■
- テストにさまざまな情報を関連づけて一元管理
- Webブラウザー上でテストケースを簡単に入力や編集可能
- テスト実施の準備と結果の共有が容易
- 進捗や比較などのレポートを提供
- 要件 / 課題管理ツールやテスト自動化ツールと連携
日本国内では、テスト管理にExcelを使っていたお客さまからの乗り換えが多く、Web上で完結するテスト管理を実現されています。
TestRail でテスト管理のお悩みを解決しませんか?