この記事はフロムスクラッチ Advent Calendar 2016の5日目の記事です。
自己紹介
1987年の三重県人です。関西の人間(特に大阪)からはよく虐げられます。くやしいのぅ。
現在はフロムスクラッチの開発部隊にいます。主にはテストチームのマネージメントをしていますが、要件定義のお手伝いをしたり、AIのためのデータモデルの設計のお手伝いをしたり、テストデータ自動生成の仕組み考えたり、などとやってることは様々です。なんでもやったるぞと。
今日はテストチームでテスト品質評価できる仕組みを作成したので、その概要をお話します。三部構成の予定。
はじめに
テストチームのドン的存在、@take_chan_man 先生(品質管理責任者)はある日言いました。
「楽にテスト品質を管理・確認できる仕組みがあったらいいなぁ。。」
詳しく聞いてみると、つまりこういうこと。
- テスト進捗状況をパッと見で確認したい。
- プロジェクト全体とテスト担当者単位どちらの視点からでもテスト進捗状況が確認できると麗しいよね。
- 進捗状況と不具合発生状況とかの内訳が確認できるとありがたいよね。
- 品質情報をパッと見で確認したい。
- テスト結果の集計(未消化のテストケース数や不具合発生数など)や発生事象(動作不正など)、不具合を埋め込む原因となった工程(要件、詳細設計など)とかが確認できたら喜ばしいよね。
- 不具合の検出密度とかPB曲線とかが確認できると嬉しいよね。
とかとか、、
ふむなるほど。ちょっと調べてみるとredmine impasseなど、いくつか製品がみつかった。でもテストケース作るのがredmineとかにシバられちゃうのも嫌だな。自由度が少なくなる。それに、WBSとかテストケースとか基本的にGoogleスプレッドシート使ってんだよな。しゃーない、じゃあ作っちゃおう。
システム概要
WBS、テストケースと結果、不具合報告、などすべて Googleスプレッドシートで書かれていることもあり、各データの集計・見える化にはGoogle Apps Scriptを使うことにしました。システム概要は以下の感じです。
IPO
input と処理内容、outputについてそれぞれ説明します。
インプット
インプットファイルはWBSとテストケースと結果と不具合報告です。
収集するデータそれぞれ以下の通り。
インプットファイル名 | 収集するデータ |
---|---|
WBS | 各個人のテスト進捗、残テスト数などテスト進捗データ |
テストケースと結果 | 未消化のテストケース数や不具合発生数などテストケース進捗データ |
不具合報告 | 現在の不具合数や解決済の不具合数などの不具合の消化に関する進捗データ |
プロセス
インプットファイルはgoogle spreadsheetで、google apps scriptと連携する必要があります。連携方法については以下と本家のドキュメントを参考にしました。
収集したデータをもとにデータテーブルを作成し、表やグラフを作成します。
作成方法は本家のリファレンスを参考にしました。
アウトプット
アウトプットとしてテスト進捗状況表と品質情報表を作成します。アウトプットの形式としてはHTMLです。アウトプットの作成と公開方法については以下を参考にしました。
アウトプットとその説明はそれぞれ以下の通り。
アウトプット名 | 概要 |
---|---|
テスト進捗状況表 | テストの基本情報(テストケース数や不具合発生数、テストケース、不具合の密度)、不具合の発生事象、不具合の原因工程を集計し表示する。 |
品質情報表 | テストケース・不具合を縦軸、時系列、残テストケース数・検出不具合数・解決不具合数を集計し、PB曲線を表示する。(今のところはPB曲線のみ) |
まとめ
ということで本日は、テストチームで考えたテスト品質を管理するための仕組みの概要紹介でした。
「なんだよ、ここで終わりかよ」と言われそうですが、安心してください。
次の週(12月12日)に「テスト進捗状況表」を、、、
さらに次の週に(12月19日)に「品質情報表」を、、、
それぞれ詳しく紹介しようと思います。そうです。引き伸ばし作戦です。
さてさて次回は @jkkitakita 先生。とがった投稿を期待しております!
それでは〜