Facebook x

ジャンル

テスト自動化は運用が9割 ~テスト実行した後の運用と効率を上げるための3つの工夫~
第2回 テスト自動化は運用が9割
テスト自動化は運用が9割 2024.11.11
x hatenabookmark
2

テスト自動化は運用が9割 ~テスト実行した後の運用と効率を上げるための3つの工夫~

執筆: 江村 禎昭

バルテス・ホールディングス株式会社 ソリューション事業推進部 首席研究員

テスト自動化は作ることがゴールではありません。

以下のように、定期的なテスト実行をし、結果を分析して、品質の評価をする等の運用を行って、初めてテスト自動化に価値が生まれ、目的を達成することができるのです。

  • テスト自動化スクリプトをテスト環境にリリースする
  • アプリケーションに対してテスト実行する
  • テスト実行結果を分析してアプリケーションの品質評価をする

ただし、そのテスト実行で工夫をしないと、テスト自動化の運用工数が増えてしまうことになります。

なぜなら、テストが失敗したら、なぜテストが失敗したかの分析や不具合レポートの作成・提出など、新たに運用が発生するからです。

定期的にテスト自動化を実行するに比例して、さらに運用工数が増えるため、テスト実行に関わる運用の効率性が求められます。

そこで第2回である今回は、効率よくテスト実行する運用について解説します。

テスト自動化は運用が9割 の連載一覧

もくじ
  1. テスト実行の方法
    1. 手動実施
    2. アプリケーションリリースのトリガー実施
    3. タイマー実施
  2. テスト実行後の運用
    1. テストが成功した場合
    2. テストが失敗した場合
  3. テスト実行の運用を楽にする工夫
  4. まとめ

1.テスト実行の方法

テスト自動化のテスト実行の実施方法には大きく3つ考えられます。

  • 手動実施
  • アプリケーションリリースのトリガー実施
  • タイマー実施

順に特徴を解説します。

1-1 手動実施

テスト自動化を実施させたい時に、手動でテスト実行を開始させます。

手動実行の特徴は以下の通りです。

メリット

  • 実施タイミングを選べる(オンデマンド実施)
  • テストリソースをコントロールできる

デメリット

  • 実施が人依存になり、実施させる工数が発生する
  • 定期的に実施されない(忘れる)可能性がある
  • 全てのテスト結果が出るまで待たされる

1-2 アプリケーションリリースのトリガー実施

開発がアプリケーションをテスト環境にリリース完了した時をきっかけ(トリガー)に、テスト実行を実施させます。

トリガー実施の特徴は以下の通りです

メリット

  • アプリケーションの改修の都度、テストが自動的に実行される
  • テスト結果のフィードバックが速くなる

デメリット

  • アプリケーションのリリース頻度が多いと、先に実施したテストが終わっていない可能性がある
  • アプリケーションのビルドバージョンとテスト結果を紐づける必要がある

1-3 タイマー実施

毎日1回等、スケジューラーをもとにテスト実行を実施させます。

タイマー実施の特徴は以下の通りです

メリット

  • アプリケーションのリリースに関係なく、定期的にテストが実行される
  • 定期的実行による不具合(日付依存、繰り返し操作等)が見つかる可能性がある
  • 深夜や週末に実施させることでテストリソースを効率よく利用することができる

デメリット

  • テスト結果のフィードバックが遅くなる時がある
  • 仕様変更が発生し、テスト自動化の修正が追い付かないと、テスト失敗のアラートが連発する

以上のように、テスト自動化の実施方法にはそれぞれ特徴があります。

トリガー実施やタイマー実施は、テスト実行回数が増えます。早くテスト結果を開発にフィードバックして、高い品質を維持するには良い方法です。自動的にテスト実行されるため、効率的でもあります。

ただし、それに比例してテスト実行後の運用も増えます。

そのため、テスト実行後の運用が追い付かない初期フェーズは、手動実施を行い、経験値が積み上がり、運用の仕組み化が整った時点で、トリガー実施やタイマー実施に切り替えるとよいでしょう。

テスト自動化は運用が9割
x hatenabookmark
2

執筆: 江村 禎昭

バルテス・ホールディングス株式会社 ソリューション事業推進部 首席研究員

石川県金沢市生まれ。趣味は富士山登山、ほぼフルマラソン。20年以上インターネットサービス会社に勤め、アプリケーションエンジニア、プロダクトマネージャ、テストエンジニアと様々なロールを担当してきた。バルテス・ホールディングスに入社後、テスト自動化導入のコンサルティングや、テスト自動化ツールであるT-DASHの導入支援を担当する。Jasst Hokkaido, Tohoku, Tokyo 等で講演