GENZではテスト自動化に関するご相談を承っています。
こんなテストを自動化したいという具体的なお話から、
- テスト自動化がどんなものか説明してほしい
- テスト自動化をしてみたいからアイデアがほしい など
テスト自動化に関して様々なご相談をいただくことがあります。そこで今回は、テスト自動化に関する様々なアプローチやテスト自動化が有効なケースについてご紹介します。
様々なテスト自動化
テスト自動化と言っても様々なアプローチがあります。
プログラムを書いてテスト自動化を構築する方法と、ノーコードやローコードと言われる形でプログラムを書かずに、簡単にテスト自動化を実現できる有償ツールやサービスを利用する方法の2つに大きく分けられます。
さらにプログラムを書いて構築する場合、利用するプログラム言語や自動化フレームワークが複数存在します。有償ツールやサービスにも様々なものがあります。
GENZでは特定のプログラムやツールに偏らず、お客様の状況や環境に合わせたテスト自動化をご提案しています。
ノーコードやローコードによる有償ツールやサービスの利用では、GUIでの操作などでテスト自動化の構築が比較的簡単に実現可能です。しかし、お客様が開発されるサービスのセキュリティ要件から外部サービスの利用が難しい場合があります。またプログラムから書く自動化に比べ自動化出来る幅が狭くなる場合もあります。
有償ツールやサービスの利用に対し、プログラムから書く自動化は好きなようにテスト自動化を構築できます。しかし構築の難易度が上がり、またテスト自動化構築後にテスト対象のサービスに改修があった場合、テスト自動化自体の改修メンテナンスが必要になりそれなりのコストがかかってきます。
どちらが優れているということはなく、お客様の環境や状況に合わせて検討いただくことをお勧めいたします。
テスト自動化の必要性を検討する
そもそもテスト自動化は必要なのでしょうか?
そこから検討する必要がある場合もあります。
プログラムを書くにしろ、ノーコード/ローコードで簡単に構築するにしろ、構築コストとメンテナンスコストは必ず発生します。

テスト自動化をしてみたものの、実は手作業のマニュアルテストで行ってもコスト的にあまり変わらなかった、もしくはテスト自動化の方が結果的にコストがかかってしまったという状況になる場合もあります。
またテスト自動化する場合もマニュアルテストと同様にどんなテストを行うかのテスト設計は必要になります。テストの観点漏れがあるテストケースで行ったテストは、マニュアルテストであっても自動テストであっても十分なテストにはなりません。不十分なテストがただ高速に実行されるだけの残念な結果になってしまいます。
なお、GENZで作成しているテスト観点一覧のサンプルをダウンロードできますので、興味がありましたらダウンロードしてください。(コンテンツダウンロード)
テスト自動化したほうが有効なケース
しっかりテスト設計を行って作成した十分なテストケースを自動化できたら、人の手で行うマニュアルテストは不要になるのでしょうか?
そんなことはありません。
例えば、縦長のスマホサイトのスクロール時のカクツキや動画再生時の画面の一瞬のチラツキ、そのような不具合はテスト自動化では検知が難しいです。細かくプログラムでテスト自動化を実装すればカバーできないことはないですが、そのコストをかけるのであればマニュアルテストでサクッと終わらせた方が早いと思います。
また、利用ユーザーの使い勝手のアクセシビリティに関する部分もテスト自動化で検知するのは難しいと思います。
そのためテスト自動化ですべてをカバーすることは現状不可能です。
しかし、テスト自動化が無駄かというとそんなことはなく、繰り返し行われるテストで毎回同じ結果であることを確認するような場合や長時間の実行、深夜に行う必要があるテストなどでは有効です。
自動テストに任せられるところは任せて、それにより空いた時間で人間しかできないテスト設計やテスト実施を行うのが良いでしょう。
次回のブログでは実際にテスト自動化で書くプログラムについてお話ししたいと思います。
GENZのWebテスト自動化サービス
GENZはテスト自動化を承っております。どんなご相談でも承りますのでテスト自動化で気になることがごさいましたら、ぜひGENZへご相談ください。(Webテスト自動化)