便利機能(8)
英文でスクリプトを作成

 それでもテストツールの多くは「スクリプト」にこだわっている。理由はスクリプトに慣れたテスト担当者が今後も一定数存在するほか、スクリプトの方が詳細なテストの条件を設定しやすい、と考えているからだ。

 こうした状況の中で、米IBMは「第三の選択肢」を用意した。「英文」で記述するという、GUIでもスクリプトでもないアプローチである。

 これは、結合テストツールの「Rational Functional Tester」が備えた機能だ。画面上で英文を書くと、その裏でスクリプトが自動生成される。日本語には対応しないが、金元氏は「文法は初歩レベルなので問題なく使えると思う」と話す。

 同ツールには、プログラムとテストスクリプトの構造をひも付け、プログラムを修正するとスクリプトも自動で修正される機能「ScriptAssure」がある。これもテストスクリプトの呪縛から解放される、便利な機能の一つだろう。

徹底的に自動化し、考える作業に集中する
米MicrosoftのBj Rollison氏
米MicrosoftのBj Rollison氏

 米Microsoftには約9800人のテスト担当者が在籍する。その中で私は、1994年からテストを担当し、現在はモバイル端末向けプラットフォームの「Windows Phone」のプリンシパルテストリードを務めている。

 テストの最前線にいる立場から見ても、現場が置かれている状況は相変わらず過酷だ。開発は数週間という短いサイクルを回すが、この中で膨大なテストをこなす必要がある。そのため効率という点で、テストの自動化が大きなテーマになっている。

 単体テストの完全自動化や、設計モデル(アーキテクチャー)の自動テストなど、テストの自動化はここ5年ぐらいでかなり進んできた。進捗やバグといった管理情報も、専用のシステムを構築して可視化している。テスト環境は、仮想化技術で一元化する環境を整備した。

シナリオの検討作業が大きな問題

 そんな現場が今直面している問題は、テスト設計の一つであるシナリオの作成だ。特にWindows Phoneなどは、ユーザーによって利用形態が大きく異なる。想定ユーザーとなるペルソナとシナリオの設定には、経験とスキルが必要になる。これを自動化するのは現実的に困難だろう。

 だからこそ、できるところは徹底的に自動化し、人間は考える作業に集中させたい。その意味でもテストの自動化は永遠のテーマだ。