2か月かかったテストスクリプトを実行したら修正が大量発生!
続いての事例は、「スクリプトの修正が大量に発生する現場」。顧客へのヒアリングでは「テストスクリプトが完成して実行したら、XPathの修正が大量に発生した」との声があった。大規模なUI改修のプロジェクトかどうか尋ねると「いいえ、2か月かけてスクリプトを作成し、実行したらこのような状況になった」との回答だった。詳しく調査したところ、すべての画面のテスト自動化プロジェクトを3か月かけて進めており。スクリプトが完成し、リグレッションテストとして開発プロセスに組み込んだところ、大量の修正が必要になったという。
江村氏は、この問題の原因は2つあり、1つは、プロダクトの仕様変更に追随できていなかったことだと指摘した。この自動化プロジェクトは2〜3か月かけてA・B・Cという機能のテストコードを書き、4か月目にリグレッションテストを実行した。しかし、その間に開発プロジェクトが並行して進み、機能AとBに改修が入っていたにもかかわらず、自動化プロジェクト側はその変更に気づかなかった。その結果、Cは偶然問題がなかったものの、AとBについては動作しなかった。
もう1つの原因は、テスト自動化を常に動かしていなかったため、小さな変更に気づけなかったことだ。開発側で進められたリファクタリングやUIの変更がテストに反映されないままとなっていたのだ。
解決策として、テスト自動化を定期的に実行することを提案した。スクリプトが完成したら、すぐに定期実行に組み込むというプロセスが望ましい。そのためにテスト自動化のスクリプト作成環境と、テスト実行環境を分離し、常にテストを動かせる環境を整えたい。江村氏は「テスト自動化を常に動かせる環境を整え、スクリプトが完成したらすぐに定期実行に移行することが重要です」と述べた。