テスト自動化を開発の“武器”にするための3つのポイントや、“自動化”の良い事例、悪い事例など、テストの現場を「進化させる」知見が多数紹介されたカンファンレンスの模様をレポートする。
2013年12月1日、東京・外苑前のオラクル青山センターにて、テスト自動化研究会(STAR)が主催する「システムテスト自動化カンファレンス2013」が開催された。
STARによると、システムテストの自動化に特化したものとしては日本初の勉強会になるという。カンファンレンスでは多数の参加者が熱心に耳を傾けていた。その様子をレポートしよう。
オープニングセッションにはSTARの近江久美子氏が登壇。「よりよいテスト自動化のためにちょっと考えてみませんか?」と題して講演を行った。
近江氏は最初に、テスト自動化のゴールについて「『効率化したい』『手動ではできないテストがしたい』など、目的は現場ごとに異なる」と述べ、「まずは何を目的にしているかを考え、それに合わせた実現手段を取るべきだ」とした。テスト自動化で可能となるものも多いが、そのために増える作業、減る作業、新たな費用が発生することがあり、「自動化されたテストは、手動で行われるテストを単に置き換えるものではない」と強調した。
それを踏まえ、「よいテスト自動化」について近江氏は3つのポイントを提示する。それが「スコープ(適用範囲)」「ROI(投資対効果)」「プロセス(過程)」だ。
まずスコープについて、近江氏は「自動化できる範囲と、自動化して“おいしい”範囲は必ずしも一致しない」と述べる。自動化したとしても、スクリプトのメンテナンスが大変であれば自動化の意味は薄れてしまう。そのテスト自動化が必要なのか常に意識し、自動化して意味のないものは省くことが重要だという。
どの部分のテスト自動化が必須かが分かったら、それがどのくらいの価値があるかを見極める必要がある。近江氏は「ROI評価を行い、負担を節約しつつ利益を出せるおいしいところだけを自動化すべき」と述べる。
最終的にはテスト自動化自体がプロジェクトやプロダクトの利益につながるべきであるとし、ツール導入に掛かる初期投資と保守、スキルコスト、スクリプト伝承コストなどが目的とあったものであるかを見積もるべきであるとした。
ただし、これを厳密に評価するのは難しい。近江氏は「重要な部分に限るなど、濃淡を付けてROIを評価すべき」とした。
最後は適切なプロセスだ。スコープを見極め、ROI評価をしておいしいところが分かっている部分のテスト自動化であっても、単に作業が減るというだけで実施していいのだろうか。
近江氏は、「そもそもテスト自動化を実施する以前に、テストプロセスが機能していない場合は、その整備から行う必要がある。意味がないテストを自動化しても意味がない」と指摘する。テスト自動化が劇的な品質変化をもたらすのではなく、「よいテストを作ることが先」だと述べる。
テストの自動化を行う場合、エラー時の挙動決定やレポート出力の内容、テスト内容のレビュータイミングが早くなる。そのため、テスト自動化を導入するには、プロジェクトのプロセスの負荷、およびタイミングが変わるというのも重要なポイントとなる。これには、関連する他の組織にも影響する部分であることを近江氏は指摘する。
近江氏は「テスト自動化により、テストを柔軟に行えたり、幅を広げられたりする。自動化しない方がいい部分もあるが、自動化すべきところを適切に自動化すれば武器になる」と述べた。
Copyright © ITmedia, Inc. All Rights Reserved.