テスト自動化の運用における3つの課題
バルテスグループは、ソフトウェア開発におけるV字モデルの上流から下流まで、品質向上を支援する事業を展開する企業である。同グループのバルテス株式会社では、ソフトウェアテストの支援に加え、日本語で書かれたテストケースをスクリプトに変換できる月額3630円~(7月24日現在)利用できるテスト自動化ツール「T-DASH」も提供している。江村氏は、20年以上にわたりWEB業界に携わり、アプリケーション開発やプロダクトマネジメント、QA組織の立ち上げ、テスト自動化プラットフォームの構築など、さまざまな経験を積んできた。現在は、同グループ内のバルテス・ホールディングスでテスト自動化のエバンジェリストとして社内外で活動している。
テスト自動化には、仕様の追加や変更時にスクリプトを修正する必要があり、テストの実行や結果の分析、さらにテスト自動化の品質改善など、さまざまな運用が伴う。江村氏は代表的な3種の運用について説明した。
まずは、仕様の追加や変更時のスクリプト修正だ。仕様が追加されると、テストカバレッジが低下するため、新たなスクリプトの開発が必要になる。江村氏は「この作業はかなり手間がかかる」と指摘した。仕様変更が発生した場合、既存のテストスクリプトが動作しなくなる可能性があるため、画面要素や、テストステップの修正が求められるからだ。
2つ目は、テストの実行と結果の分析だ。一般的にJenkinsなどのツールでテストが自動実行されるケースが多く、失敗した際にはアラートが発生する。次に、その失敗の原因を実行レポートから調査し、アプリケーションのバグやテスト自動化自体の問題、ネットワークなどの外部要因など、原因を特定する。最後に、アプリケーションのバグであれば修正後に再テストを実行し、成功すれば作業が完了する。江村氏は「この作業は地味ですけど大変です」と話した。
3つ目は、テスト自動化の品質改善。テスト自動化もアプリケーションの一部であり、その品質が低ければ誰も信頼しない。したがって、品質改善は継続的に行う必要があり、実行時間の短縮や、偽陽性・偽陰性の削減、信用できない(Flaky)テストの改善などが求められる。