はじめに
みなさんはテスト項目書の作成はどのように行われていますか?
一番多いのはExcelやGoogle Workspaceなどのスプレッドシートだったり、TestRailやCATなどのテスト管理クラウドサービスを利用されているかもしれません。
自分もスプレッドシートだったのですが、それから脱しようとTestLinkを立ててみたり、GitHubのMarkdownで書いてチェックボックスで管理したりしてみたのですが、なかなかうまくいきませんでした。
そんな中、会社で導入されたnotionで提供されているデータベースの機能がテスト項目書を作るのによさそうだったので、ブログにまとめてみた次第です。
いいところ①:スプレッドシートでの書き心地が残っている
notionのエディター上で /database
と入力して「データベース:インライン」を選択すると、スプレッドシートのような表が作成されます。notion上ではこれを”データベース”と呼んでおり、スプレッドシートのようにセル内に情報を入力する事ができます。
各列の項目には「テキスト」「数値」「セレクト」といった種類を割り当てる事ができ、入力する内容をその種類によって制限する事ができます。
また、セルの右下角をドラッグすると値を複製できるあたりもスプレッドシートではおなじみの機能ですね。
いいところ②:サイドピークで各行毎に詳細が記録できる
、、とここまではスプレッドシートでもできますが、notionの場合は各行の編集画面(サイドピーク)がキモだと思っています。
サイドピーク(自分はドロワーと呼んでました)とは、上記アイコンをクリックすると右側に表示される新しいエディターで、上部には各列の項目やコメント欄、下部には自由入力欄が設けられており、ここで入力した内容は各行ごとに保持されます。
この”各行ごとに保持される”が大事で、テスト項目書を作った後、実際に検証を実施した場合、その証跡(エビデンス)を記録する場所として活用できるのです。
notionのエディターにはファイルアップロードに加え、クリップボード経由でスクリーンショットなどの画像を直接貼り付ける事が可能です。ここをうまく利用する事で、もし不具合を見つけた場合も開発者にすぐ連携する事ができます。 (コメント欄を使うことで開発者と修正後の確認などのやりとりを行ってもいいかもしれません)
いいところ③:notion自体の機能による伸びしろがありそう
ここはまだ未検証ではあるものの、スプレッドシートだとテスト項目書の実施後はただの文章として残るだけだったのがnotionのデータベースとしてテスト項目が管理される事で、テスト項目の再利用性が上がったり、外部サービスとの連携やオートメーション、内蔵のAI機能などの恩恵を受けられる可能性があったりと、今後テストを実施する際の伸びしろを感じています。
(何より日々のテスト実施のモチベーション維持になるw)
そういった機能を使わなくても、クラウドサービス上にデータが記録される事によるパーマリンク(URL)による情報共有や、リアルタイムでの同時編集と履歴からの復旧だけ取っても、今までのテスト項目書管理からの進化を感じられるはずです。
おわりに
notionを使う前はConfluenceを使ってて、それに比べるとnotionはエディターの書き心地に違和感があってあまり使いこなせていなかったのですが、テスト項目書をnotionで書き始めてからはだいぶ慣れてきました。
いまさら感はありますが、notionの活用事例として参考になれば幸いです。
おまけ
本当はChatGPTに作ってもらった架空のテスト項目書をサンプルにして書くつもりだったのですが、なんか仕事みたいでグッタリしたのでおまけとしました(笑)
まだ各列の項目は改善の余地ありですが、自分の記録として残しておきます。
列名 | notionの列種類 | 取りうる値の例 | 説明 |
---|---|---|---|
大項目 | テキスト | 機能 | 機能や画面名など、テスト項目を分類するための項目 |
中項目 | テキスト | 商品操作 | 操作など、大項目の中で分類するための項目(無ければ空欄) |
小項目 | テキスト | 商品選択 | 項目名など、大項目や中項目で分類できなかった項目(無ければ空欄) |
系列 | セレクト | 正常系、準正常系、異常系 | テスト項目の期待動作が属する系列 |
前提条件 | テキスト | 在庫が1つ以上存在する | テスト項目の期待動作を検証する前に必要な事項(条件など) |
期待動作 | テキスト(サイドピークつき) | 商品のボタンを押すと、選択した商品の価格が表示される | テスト項目を検証した際に期待する動作(いわゆるテストケース) |
検証結果 | ステータス | Not run, Skipped, Passed, Failed | 検証結果の状態 |
検証者 | ユーザー(非表示) | 山田太郎 | 検証を行った人のnotionアカウント(無ければテキストにして自由入力) |
検証日時 | 日付(非表示) | 2024-01-23T12:34:56 | 検証を行った日時 |
- notionのID列が自動採番できてテスト項目の管理に便利だが、再採番ができなかったりとうまく使えなかった
- 検証結果の項目はここやここなどの既存のテスティングフレームワークやコミュニティーの値を参考にしながら、自身の活動に合ったものを設定する
- 大中小の項目で分類できないテスト項目(ブラウザーやOSの種類など)は、グループやサブアイテム、テーブルビュー機能を上手く使うと管理できるかもしれない
- 前提条件や期待動作は、件数やテキストなど定量的な値を記載すると実際の検証が行いやすくなる
- 逆にそれが記載しにくい場合は、テスト項目の粒度が大きい可能性があるので、分類や系列を見直して細分化する
- 系列は最低限”正常系”と”準正常系”のペアで記載する(正常系はいわゆるハッピーパス、準正常系は既知のエラーなど)
- 系列のペアを記載した時にその派生や反対などの類型のテスト項目が追加できないか確認する
- コピペで横展開しやすいテスト項目はコピペ漏れがないか確認する
- 各列にはアイコンが設定できるので、識別しやすいアイコンをつけると気分があがる
- 系列や検証結果のセレクト項目にも色が設定できるので、識別しやすいものをつける(特に検証結果のオールグリーンは達成感が出る)