Skip to main content
QUICK REVIEW

[論文レビュー] Estimating Return on Investment for GUI Test Automation Tools

Felix Dobslaw, Robert Feldt|arXiv (Cornell University)|Jul 8, 2019
Software Testing and Debugging Techniques参考文献 34被引用数 5
ひとこと要約

本論文は、実際の開発変更を再実行することで、GUIテスト自動化フレームワークの保守コストおよび投資利益率(ROI)を推定する、手動によるソースコード履歴再現手法を提案する。産業界の事例研究においてセレニウムとアイ・オートメイトを比較した結果、実装時間は総コストの約90%を占めており、アイ・オートメイトは実装時間を短縮したが、保守コストは平均で32%増加し、バグの検出数も25%多くなった。

ABSTRACT

Automated graphical user interface (GUI) tests can reduce manual testing activities and increase test frequency. This motivates the conversion of manual test cases into automated GUI tests. However, it is not clear whether such automation is cost-effective given that GUI automation scripts add to the code base and demand maintenance as a system evolves. In this paper, we introduce a method for estimating maintenance cost and Return on Investment (ROI) for Automated GUI Testing (AGT). The method utilizes the existing source code change history and can be used for evaluation also of other testing or quality assurance automation technologies. We evaluate the method for a real-world, industrial software system and compare two fundamentally different AGT tools, namely Selenium and EyeAutomate, to estimate and compare their ROI. We also report on their defect-finding capabilities and usability. The quantitative data is complemented by interviews with employees at the case company. The method was successfully applied and estimated maintenance cost and ROI for both tools are reported. Overall, the study supports earlier results showing that implementation time is the leading cost for introducing AGT. The findings further suggest that while EyeAutomate tests are significantly faster to implement, Selenium tests require more of a programming background but less maintenance.

研究の動機と目的

  • 産業現場におけるGUIテスト自動化の長期的コストおよびROIを推定するための客観的かつ実証的な手法の不足に対処すること。
  • 実際の歴史的開発データに基づいて、競合するGUIテスト自動化フレームワークの選定を支援する意思決定手法を提供すること。
  • 異なるAGTフレームワークにおける実装作業、保守コスト、欠际検出能力、使いやすさのトレードオフを評価すること。
  • 既存のソースコード変更履歴を、自動化コストと利益を測定するための歴史的記録として使用できるかの実現可能性と価値を示すこと。
  • プロジェクトマネージャーや開発チームがGUIテスト自動化技術を採用するにあたり、根拠に基づいた意思決定を下せるように支援すること。

提案手法

  • 各バージョンでテスト実装および保守作業を手動で実行・記録しながら、ソフトウェアのソースコード変更履歴を段階的に再現する。
  • 事前に定義されたプロセスを用いて、各テストケースについて初期導入時の実装時間と、時間経過に伴う保守作業量を測定する。
  • バージョン管理の履歴を活用してテストスイートの進化をシミュレートし、各バージョンをコスト測定のマイルストーンとして扱う。
  • 人間のテスト担当者からテスト作成、実行、保守にかかる時間を収集し、現実的なコスト推定を保証する。
  • 同じテストスイートとバージョン履歴を用いて、2つのAGTフレームワーク(セレニウム(ID/名前ベース)とアイ・オートメイト(画像ベース))を比較する。
  • 定量的データに加え、インタビューを実施して使いやすさ、欠际検出能力、実際の使用における実用的課題を評価する。

実験結果

リサーチクエスチョン

  • RQ1実際の産業系システムにおいて、2つの異なるGUIテスト自動化フレームワーク(セレニウムとアイ・オートメイト)の長期的な保守コストの相対的差は何か?
  • RQ2これらのフレームワークにおいて、自動化GUIテストの初期実装時間と長期的な保守コストの比較はどのようになるか?
  • RQ3各フレームワークの欠际検出能力は何か?また、真陽性と偽陰性の観点から比較するとどうなるか?
  • RQ4使いやすさの観点で、各フレームワークの違いは何か?特に、プログラミングの専門知識の必要性とテスト作成速度の観点から評価する。
  • RQ5実際の現場で、ソースコード変更履歴を用いてGUIテスト自動化のROIを推定できる範囲はどの程度か?

主な発見

  • セレニウムおよびアイ・オートメイトの両方において、ROIに到達するまでの総コストの約90%を占めるのは実装時間であった。
  • アイ・オートメイトはセレニウムに比べて初期実装時間を短縮したが、平均してバージョンごとの保守作業量が32%増加した。
  • アイ・オートメイトは30件のバグを検出しており、これはセレニウムの25件よりも25%多い結果であり、より高い欠际検出能力を示している。
  • セレニウムはテスト作成にプログラミングの背景が必要であったのに対し、アイ・オートメイトは非プログラマーにも利用可能であった。
  • 手動による段階的再現手法は、保守コストおよびROIの推定に成功し、フレームワーク選定に役立つインサイトを提供した。
  • インタビューの結果、人間のテスト担当者はアイ・オートメイトにおけるUI変更に対してより寛容であることが判明し、UIの不安定性への対処において潜在的な利点があることが示唆された。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。