ソフトウェアテストの設計 - テスト観点の話 -
テストにも設計と実装に対応する部分が当然ある。テスト観点に着目したテスト設計の手法を島津製作所の吉澤氏と電通大の西先生から適用事例を中心に伺った。資料はJaSST '07Kansaiにあるので参照いただければと思う。内容はテスト対象とその環境をモデル化する際の手法と適用事例である。手法はテストの初期段階で、テスト観点の洗い出し(どういうテストをすべきかというテストの大項目の列挙作業)、リスクを勘案した上でのテスト作業の省略の判断、詳細化、の具体的なガイドラインを示している。この作業は非常に重要で、作業が不十分である場合にはテスト漏れに直結したり、工数とテストの効果のバランスが悪くなったりする。たとえば、配布が前提となるようなデスクトップアプリケーションソフトウェアの場合、どういうOSのどういうバージョンでどの言語/地域向けのテストをすべきか、タイムゾーンを考慮しなくてよいか等を考えられるだけ列挙/整理し、テストを実施しなかったときのリスクを勘案しながら、どのテストを実施するかを決めていきつつ、詳細化する。普段、テスト設計をされている方が無意識に実行されていることだと思うが、システマチックにやってみると適用範囲が広がったり、他のメンバと意見をだしあったりということが容易になると思う。
吉澤氏が西先生のテスト観点に着目したテスト設計の話をTEF関西勉強会というコミュニティで聞かれたことからこの手法適用がスタートしたそうだ(TEF関西勉強会はTEF: Testing Engineer's Forumの関西コミュニティ)。私も手法の提案と適用事例の報告を同時に実施することには注力すべきと考えており、エンピリカルソフトウェア工学研究会の発表で手法と適用事例の紹介をしたり、具体的に興味を持っていただいた方とのコラボレーションをEASEのメンバと一緒に進めている。吉澤氏や西先生が実践されるのを見聞きして、このような取り組みが聞く側にとって役立つことを再認識でき、よい刺激になった。