Ranorex におけるテスト自動化の費用対効果を測る方法

テスト自動化の導入を検討する際、自動化による費用対効果を予測し、評価することは非常に重要です。しかし、具体的にどのようにその費用対効果を予測すればよいのか、悩んでいる方も多いのではないでしょうか?

本記事では、Ranorexの評価ユーザー様向けに提供している費用対効果表(ROI表)を活用し、UIテスト自動化の費用対効果をどのように計測するかについて、具体的に解説していきます。

UIテスト自動化の費用対効果とは

UIテスト自動化の費用対効果とは、テスト自動化にかかるコストを予測し、手動テストと比較して自動化によって得られる利益や効果を評価することです。自動化にかかるコストには、ツールの購入費用、ツールの習得、テストスクリプトの作成やメンテナンス、テスト結果の分析などが含まれます。これらのコストが手動テストのコストを下回ることで、費用対効果が得られると言えます。

ただし、自動化の効果は、一般的に複数回テストを実行することで発揮されるため、1回のテスト実行だけでは効果を測定できません。まずは、何度も繰り返しテストするような、自動化の効果が得られやすいテストケースから効果を予測していきましょう。自動化対象とするテストケースの選定基準については、こちらをご参照ください。

費用対効果を測るための事前準備

テスト自動化の導入検討において、費用対効果を予測する場合、すべての自動化対象のテストケースを計測する必要はなく、ある程度の指標をもとに効果があると判断できれば十分です。自動化対象のテストケースから効果計測対象を選定し、プロトタイプとしてテストスクリプトを作成、時間を計測することで予測が可能です。

効果計測対象の自動テストケースを選定する

効果計測対象の自動テストケースの選定は、自動化の目的やテスト内容に応じておこなう必要があります。たとえば、以下のような基準で選定することで、効果を予測しやすくなります。

1つ目のパターン

  1. 自動化対象のテストケースを難易度別に分ける
    (基準例:画面内のUI要素数、シナリオの複雑性)
  2. 各難易度ごとの全テストケースの10%~20%を計測対象とする

2つ目のパターン

  1. テストケースの優先順位を付ける
    (基準例:リース前に頻繁にテストが実行されるもの、バグが多く発生しやすい部分、ユーザーに影響を与える重要な機能)
  2. 上位10%~20%を計測対象とする

効果計測対象の自動テストケースが選定できたら、早速、ROI表を利用して費用対効果を予測していきます。

ROI表を使った費用対効果の予測

Ranorex の評価ユーザー様向けに配布している、ROI表「Ranorex_ROI.xlsx」を利用して、費用対効果を予測します。Ranorexの体験版ダウンロード後の評価ユーザーページからダウンロードいただけます。
※表全体の補足として、の列は記入項目の列は自動算出の項目です。

ROI計算シート

まずは、「ROI計算シート」の記入項目を埋めていきます。

Step1. 人件費を記入する

以下の項目を記入します。

  • チーム担当者のレベル (A5の列)
    手動テスターと自動化エンジニアなどのレベル
  • 対象レベルのメンバーの人数 (B5の列)
    各レベルの担当者の人数
  • このポジションのメンバーの人件費 (C5の列)
    1人当たり1時間の人件費
  • 稼働時間(月) (D5の列)
    一人当たりの月の稼働時間

この項目を記入すると、合計人件費(月)合計稼働時間(月)が自動算出されます。

Step2. 削減できる時間の割合(推定)を記入する

以下の項目を記入します。推定時間が不明な場合は、まずは50%と指定ください。

  • 自動化により削減できるテスト実行時間(推定) (B12)
    手動テストの時間に対して、自動化により削減できる推定時間の割合
  • 夜間の自動テスト実行により削減できる時間(推定) (B13)
    手動テストの時間に対して、夜間の自動テスト実行により削減できる推定時間の割合

この項目を記入すると、自動化により削減できる時間の合計が自動算出されます。

Step3. 自動化する全体像を記入する

以下の項目を記入します。事前準備で選定したテストケースを記入ください。

  • テストケース# (A17の列)
    テストケース番号
  • 説明 (B17の列)
    テストケース名と説明

Step4.手動テストの時間を記入する

手動テストの時間を計測し、以下の項目に記入します。過去の手動テストの工数データがある場合は、そちらを記入ください。

  • 手動で実施した場合の時間(分) (C17の列)
    手動で実施した場合の分単位の時間
  • 1回のリリースにおける実施回数 (D17の列)
    1回のリリースで、同じシナリオを実施する回数、たとえば複数のデータパターンテストの回数など
  • リリースの回数(月) (F17の列)
    月にリリースする回数
  • 必要なテスターレベル (G17の列)
    対象のテストケースのテスト実施に必要な手動テスターのレベル(Step1で記入したレベル)

この項目を記入すると、1回のリリースの手動テスト時間(分)手動で実施した場合の人件費が自動算出されます。

Step5.自動テストの時間を記入する

自動テストの時間を計測し、以下の項目に記入します。各テストケースの自動化用のテストスクリプトを作成し、自動テストが動作するまでの時間を計測ください。

  • 自動化にかかる見込み時間(時間) (I17の列)
    自動テストを完成するのにかかった時間 (テスト作成や動作確認によるテスト実行時間、エラーによる修正時間などを含む)
  • 必要な自動化メンバーのレベル (J17の列)
    対象のテストケースの自動化に必要な自動化エンジニアのレベル(Step1で記入したレベル)

この項目を記入すると、自動化にかかる人件費が自動算出されます。

ROI計算結果シート

まずは、「ROI計算結果」シートの記入項目を埋めていきます。

Step5. 購入予定のライセンス数を記入する

以下の項目を記入します。

  • Studioライセンス (B7)
    購入予定のStudioライセンスの本数
  • Runtimeライセンス (B8)
    購入予定のRuntimeライセンスの本数

RanorexのStudioライセンスとRuntimeライセンスについては、こちらを参照ください。

この項目を記入すると、初年度のライセンス+保守費用次年度以降の保守費用が自動算出されます。
※ライセンスと保守費用は変動があるため、下図には自動算出結果を反映していません。実際のROI表では自動算出されます。

Step6. テスト対象の環境数を記入する

以下の項目を記入します。

  • テスト対象の環境数
    同じテストを複数環境でテストする場合の環境数

    同じテストを複数環境で実行するケース例
    ・デスクトップ:複数のマシン環境でテストする
    ・Web:異なるブラウザーでテストする(クロスブラウザーテスト)、ブラウザーの複数バージョンのテスト
    ・モバイル:複数のOSバージョンや複数デバイスでテストする(クロスデバイステスト)

テスト自動化による費用対効果の確認

ROI表の記入項目を埋めることで、費用対効果を確認できます。
※自動化用のテストスクリプトをメンテナンスなしで何度も繰り返し実行する場合の費用対効果です。

ROI計算結果シートにて、費用対効果を確認できます。
下図は、Studioライセンス1本、Runtimeライセンス1本、テスト実行環境数を2つに設定した結果例です。

  • 1回のリリースにおける削減費用
    損益分岐点(リリース回数)で、何回目のリリースで自動化の費用対効果が現れるかを確認できます。
  • 1回のリリースにおける削減時間
    損益分岐点(リリース回数)で、何回目のリリースで手動テストにかかる時間を回収できるかを確認できます。
  • 初年度の節約想定額 ※毎月、テスト実行するケース
    自動化導入の初年度に節約できる想定額を確認できます。初年度は、初期費用(自動化にかかる費用およびライセンス・保守費用)が発生するため、その額を差し引いています。
  • 次年度以降の節約想定額 ※毎月、テスト実行するケース
    自動化導入の次年度以降に節約できる想定額を確認できます。次年度以降は、保守費用のみがかかるため、この額を差し引いています。

なお、上記の費用対効果の計算では、ROI計算シート削減できる人件費・時間の自動算出の結果を利用しています。詳細については、ROI計算シートを参照ください。

削減できる人件費時間の詳細リストは以下です。
※削減できる時間では、ROI表を使った費用対効果の予測のStep2で記入した「削減できる時間の割合(推定)」のデータを利用しています。

  • 初回の実行で削減できる人件費
  • 1回のリリースで削減できる人件費
  • 1ヵ月で削減できる人件費
  • 1回のリリースで削減できる時間(時)
  • 初月に削減できる時間(時)
  • 次月以降で削減できる時間(時)
  • 夜間でのテスト実行でさらに削減できる時間
  • 1ヵ月あたりの削減時間合計

補足

「Ranorex_ROI.xlsx」のROI表には、自動化にかかる費用として、ツール学習コスト、運用後のテストスクリプトのメンテナンスコストは含めていません。
このあたりのコストも考慮することで、より費用対効果の精度を上げることができます。

以下のRanorexを利用したツール学習時間、運用後のテストスクリプトのメンテナンス時間の例を参考にしてみてください。

ツール学習時間の目安

初心者:約3.5時間Ranorex ハンズオン(初級コース)受講
中級者:約6時間  ※Ranorex ハンズオン(中級コース)受講
上級者:約3.5時間有償トレーニング RanoreXPathコース 受講 

Ranorexは直感的な操作のため、初心者向けのハンズオンセミナーの受講で、基本的なテスト作成やメンテナンス方法をマスターできます。まずは、初級コースのハンズオンセミナーの受講時間(3.5時間)に担当人数分の人件費を乗算してツール学習コストを見積もることをおすすめします。

運用後のテストスクリプトのメンテナンス時間の目安

運用後のテストスクリプトのメンテナンスは、アプリケーションの仕様変更やOSのバージョンアップなどで、画面レイアウトの構造や操作手順が変わった場合などに発生します。
Ranorexの場合は、UI要素を特定するためのパス(RanoreXPath)の修正や操作アクションの修正が必要です。

メンテナンスの難易度は、テスト内容やアプリケーションの構造によって異なるため、メンテナンス時間の推測は難しいです。しかし、たとえば、自動化のテスト作成にかかった時間の何割(2割など)かをメンテナンス時間として推定し、メンテナンスコストを見積もる方法などが考えられます。

コスト削減だけではない自動化による効果

「Ranorex_ROI.xlsx」のROI表では、手動テストと比較して、自動化により、どの程度コストや時間が削減できたかを確認できます。しかし、テスト自動化の効果はコスト削減だけにとどまらず、たとえば、人員不足の改善や社員のやりがいの向上、システムの不具合損失の低減など、数値では測りにくい効果もあります。そのため、手動テストと自動テストのコストが同程度であっても、テスト自動化における効果はあると言えます。

まとめ

Ranorexの導入検討のためにツールを評価する際には、今回ご紹介したROI表を活用して、費用対効果を予測してみましょう。手動テストと自動テストにかかる時間を比較することで、投資回収時期や節約額を予測し、自動化の価値を判断することができます。また、コスト削減だけでなく、システムの品質向上や人員のやりがい向上なども期待できるため、これらの自動化の効果も踏まえて、Ranorexの導入をご検討ください。

今回、使用したROI表「Ranorex_ROI.xlsx」は、Ranorex の評価ユーザーページからダウンロードできます。また、ROI表以外にも、製品紹介資料、チュートリアル、技術資料、事例資料もダウンロードいただけます。

評価ユーザーページは、Ranorexの体験版をダウンロードすると案内されます。
まだ、Ranorexをご利用でない方は、以下のボタンから体験版(14日間フル機能を無償で利用可能)をダウンロードください。