以下の内容はhttps://tech.unifa-e.com/entry/2024/09/09/194407より取得しました。


テスト自動化ツールの検討をしている話


こんにちは、ユニファQA課の中村です。

みなさんはテスト自動化ツールというものをご存じでしょうか。
開発の現場でテストをされている方、開発エンジニアの方、それに関わる方々はご存じかとは思いますが、手動で行ってきたテスト工程(テスト設計、分析、実装、実施など)を自動で行ってくれるツールとなります。

テスト自動化ツールには、オープンソースのものから企業がサービスとして提供しているもの、ノーコード、ローコードと言われるほとんどコーディングを要さないものなどいろいろな種類があります。

  • オープンソースで代表的なツール:Selenium
  • 企業が提供しているツール:mabl、Autiy、MagicPod

ユニファでは、現在このテスト自動化ツールの導入を検討しております。
そもそもですが、私たちがテスト自動化ツールを検討し始めた背景・目的としては以下がありました

  • 限られた期間でリグレッションテストを実施したい
  • 不足したリソースの中でリグレッションテストを実施したい
  • リグレッションテストのカバレッジを上げたい

現時点でもリグレッションテストの工数自体は確保して実施していますが、やはりスケジュールやリソースが厳しい場面というのは発生するためそれを解消するために検討を開始しました。

今回は、私たちQA課のテスト自動化ツールの検討の過程を共有できればと思っています

①テスト自動化ツールの調査

開始当時、QA課の中には私含めテスト自動化ツールを使用してきた経験のあるメンバーがいませんでした。
そのため、私に前提知識があまり無かったので、まずはどんなツールがあり、どのような機能や料金プランがあるか等を調べ始めました。
テスト自動化ツールは大まかに以下のように分類しました。

料金 月額課金等 無料
無料トライアル あり(どれもおおよそ2週間) なし
日本語対応 あり なし
自動化の実装方法 コーディング キャプチャ&リプレイ
テスト対象 webアプリ スマホアプリ

導入の基準としては主に以下を考えました

  • 無料トライアルあり

 ⇒事前の機能や操作、UI等の確認ができるため

  • 日本語対応あり

 ⇒何か不明点や疑問点があった時に調査や問い合わせをするため

  • 基本的にノーコードでシナリオ作成できる

 ⇒コーディングありの場合、対応できる人が限られ、持続性や整備の観点からノーコードが良いと判断したため
記条件に当てはまるテスト自動化ツールとして以下の3社のツールを候補としました。

  • mabl
  • MagicPod
  • Autify

※各社の細かい情報はここでは割愛します

②テスト自動化ツールを導入した場合のコスト検討

テスト自動化ツールの候補は出せたため、次に検討したことは導入の際のコストでした。
いわゆるROI(Return On Investment)と言われる指標があり、投資に対してどれだけの利益があるかというところを計算してきました。

※計算式に関しては以下のページを参照させていただきました。
E2E自動テスト導入の第1手としてROIを計算してみた話

計算式

ROI = 利益 / コスト * 100
利益 = 手動テスト実行の人件費 - 自動テスト実行の人件費
コスト = 毎月のツール利用料 + 初期開発コスト*1年目のみ発生 + (自動テストの継続的なメンテコスト - 手動テストの継続的なメンテコスト) + 1年毎に発生する中規模メンテコスト(リファクタリングなど)

下記が計算式を用いた結果となります
※記載の数字は実際の数字ではない仮の数値となります

ROI例

例で挙げた上記計算結果ですが、この場合であれば、1年目からROIが100%を越えるため効果がある、と言えるかと思います。

実際の数値でもこのようにROIを算出してみて、テスト自動化ツールを導入した場合に効果があるのかを確かめました。
実際の算出したROIからもテスト自動化ツールを導入した場合に効果があることが分かりましたので、次のステップに進めることができました。

③テスト自動化ツールの導入に向けての工程の整理

テスト自動化ツールを導入するまでの工程については大まかに以下のように整理しました。

  1. 無料トライアル期間中に検証するテストシナリオや機能等の洗い出し
  2. 無料トライアルの試用
  3. 無料トライアルを試用した結果の評価
  4. 無料トライアルを試用した各ツールの比較検討
  5. テスト自動化ツールの導入

上記の工程の内、現段階で進められているのは「3.無料トライアルを試用した結果の評価(1社)」となっていますが、簡単に各工程での実施内容を以下に記載させていただきます。

1.無料トライアル期間中に検証するテストシナリオや機能等の洗い出し

無料トライアル期間は基本的に2週間という短い期間のため、限られた期間内で優先的に確認したいテストシナリオやツール上の機能が何かというのを整理しました。

例えば以下のような点です

  • CRUD系(ex.園児名簿、先生名簿等の新規作成、表示、更新、削除)のシナリオケース
  • 単一の画面遷移系(ex.ログイン画面等)
  • 画面UI・文言確認系の機能はどうか

2.無料トライアルの試用

この工程はそのままですが実際に各ツールの無料トライアルを利用して試すことになります。
執筆時点では1社のみではありますがmablの無料トライアルを申請し、試用しました。

上記で整理した点を基本として、実際にツールを触りながらテストシナリオの作成、自動実行、使用できる機能の確認を可能な範囲で行いました。
実施した内容の詳細については書くと長くなってしまうかと思うので、ここでは割愛させていただきます。
ただ、事前にある程度想定はしていたのですが、調査や問い合わせの時間はやはりどうしてもそれなりに発生してしまいます。
おおよその作業割合としては
 [実作業:調査・問い合わせ⇒6:4]
と感じました。

これは、初めてのツールを触る以上ある程度仕方の無い面もあるかと思いましたので、今後の無料トライアルを試用する場合は、調査・問い合わせの工数も考慮して、確認するテストシナリオや機能面を整理しようと思いました。

3.無料トライアルを試用した結果の評価

無料トライアルの試用後にツールの評価をまとめていきます。
これは、後ほど行う各ツールの比較検討をする際の参考材料とします。
ここでは、実際に試用してみた所感を作成した後、以下観点で評価をしてみました。

  • 画面UI

 操作する上で使いやすいUIであるか

  • 機能

 使用できる機能の種類、利便性はどうか

  • サポートの充実度

 問い合わせ等、企業からのサポート面はどうか

  • 習熟コスト(難易度)

 ツールを使うためにかかる習熟コストはどのくらいか

4.無料トライアルを試用した各ツールの比較検討

各社無料トライアルを試した後に様々な要素から比較検討を行おうと考えています。
各プランや料金、上記の無料トライアルを試した上での評価などを総合的に考慮して比較検討を行う予定です。

5.テスト自動化ツールの導入

上記工程を経て、晴れてテスト自動化ツールの導入に至ると想定しています。
仮に導入した後も定期的な効果測定をしていき、ツールの有効性を監視していきたいと考えています。

まとめ

今回は私たちのテスト自動化ツールの導入の過程について簡単ではありますが紹介させていただきました。
ほぼ初めてテスト自動化ツールというものに触れていき、新たに知識や経験を得ることができたため個人的には進められて良かったと感じています。
とは言いつつも、まだツールに関する知識や経験も浅いので今後も引き続きの自己研鑽に励んだり、今回の進め方についても改善の余地はあるかなと、私自身、感じるところはありましたのでそこも取り組んでいこうと思っています。
現時点では、まだテスト自動化ツール導入までの道半ばではありますが、今後も試行錯誤を繰り返しながら進めていきます。

ユニファでは一緒に働く仲間を募集しております。
unifa-e.com




以上の内容はhttps://tech.unifa-e.com/entry/2024/09/09/194407より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14