テスト自動化(テストじどうか)とは、テスト支援ツール等を使うことにより、ソフトウェアテストを自動化することである。テスト自動化は、反復的なタスクや手作業では困難なテストの実施を可能にする。CI/CDに不可欠な要素である。[1]

一般的アプローチ

編集

テスト自動化には多くのアプローチがあるが、以下は広く使われている一般的なアプローチ:

  • GUIテスト
  • APIテスト

手順

編集

この自動化には通常、以下のような手順が含まれる。

  • テストケースの設計
    • テストケース[2]はプログラムがどのように動作すべきかを理解していないと作れない。JTest等のように、プログラムの構造に基づいて自動的にテストケースを作成するツールも存在するが、プログラムの実行結果がどうなるべきかは基本的に人間が決定する。
  • テストの実行と結果の確認
    • テストケースが実行可能なプログラムで記述されていれば、テストの実行と結果の確認は自動化できる。単体テストの自動実行フレームワークとしてxUnitがある。xUnitには、各種言語向けの実装が公開されており、通常のプログラムと同じ形式でテストケースを記述することができる。
  • テスト進捗の管理
  • レポートの作成

脚注

編集
  1. ^ O’Connor, Rory V.; Akkaya, Mariye Umay; Kemaneci, Kerem; Yilmaz, Murat; Poth, Alexander; Messnarz, Richard (2015-10-15) (英語). Systems, Software and Services Process Improvement: 22nd European Conference, EuroSPI 2015, Ankara, Turkey, September 30 -- October 2, 2015. Proceedings. Springer. ISBN 978-3-319-24647-5. https://books.google.com/books?id=2xOcCgAAQBAJ&q=Systems%2C+Software+and+Services+Process+Improvement%3A+27th+European+Conference&pg=PA71 
  2. ^ Test Automation Best Practices and Tips for QA Managers”. 2021年7月15日閲覧。

関連項目

編集