こちらの記事では、受け入れテストの自動化について解説しています。受け入れテストとはどのようなテストなのか、自動化することによってどのようなメリットが得られるのか、自動化ツールを選択する際のポイントなどをまとめました。
受け入れテスト自動化とは、ソフトウェアが業務要件を満たしているか検証する受け入れテストを、自動化ツールやスクリプトを用いて効率的に実施する手法です。手動テストと比較して、テスト担当者の負担軽減と品質の安定化を実現できます。
完成したソフトウェアが、クライアントの業務要件を満たしているか検証するテストを「受け入れテスト(ユーザー受け入れテスト)」と呼びます。このテストは「UAT(User Acceptance Test)」や「検収テスト」「承認テスト」といった名称で呼ばれることもあり、実際の利用環境やそれに近い環境において、問題なく動作するかを確認します。
開発を外部のベンダーに依頼した場合には納品物の検収となりますが、もし内製したシステムでも予定通りに完成したか確認するための最終のテスト工程として実施されます。
業務シナリオとは、開発したシステムが実際にどのように使われるかを想定したもの。ある業務をシステム上で行った時の流れを指します。受け入れテストを行う際にはシナリオ作成が必要となりますが、この時には実際にユーザーが使用している前提で作成を行います。
日々行っている業務や週末に行う処理、月末に行う処理などさまざまな場面を想定してシナリオを作成し、テスト環境にて検証を行っていきます。この部分の自動化によって、現場で必要となる業務フローについて、抜けや漏れがない状態での検証が可能となります。
自動化を行った場合、これまで行われてきた手動による受け入れテストと比較すると、テストを担当するユーザーや現場担当者の負担を大幅に軽減できます。手動テストは時間と手間がかかることから担当者の負担となり、リリースのスケジュールや業務に影響が出るケースも考えられますが、自動化により素早く検証を行えるようになるため負担を軽減でき、早期のフィードバックが可能となります。また、修正対応の効率も向上することが期待できます。
手動で受け入れテストを行った場合、テスト担当者のスキル・経験によって作業の品質や不具合の検出精度にばらつきが発生することがあります。しかし、自動化を行うと同じ条件での検証が可能になるため、品質のばらつきを抑制できる点はメリットのひとつといえます。この点から、安定した品質につなげられます。
IPAのソフトウェア開発データ白書によると、新規開発プロジェクトにおける実態は以下の通りです。開発規模1,225FP(機能ポイント)の中央値で、総合テスト工程では工期9.1ヶ月、工数75.0人月が必要とされています。これは受け入れテスト前の品質確保がいかに重要かを示すデータといえます。
改修・保守プロジェクトの場合でも、開発規模862FPの中央値で工期6.3ヶ月、工数43.9人月を要しており、テスト工程における十分なリソース確保が求められることがわかります。
同白書のデータでは、総合テスト工程におけるテストケース密度の中央値は9.31件/KSLOCとなっています。自動化を検討する際、この密度を参考値としてテストケース数を設定することで、適切なテスト範囲の設計が可能となります。上限値17.94件/KSLOC、下限値3.92件/KSLOCという範囲も、テストの十分性を評価する目安として活用できます。
結合テスト工程では中央値35.70件/KSLOCとさらに高密度のテストが実施されており、段階的な品質確保の重要性が数値からも読み取れます。
総合テスト工程における検出バグ密度は、中央値で0.320件/KSLOC、75パーセンタイル値で0.833件/KSLOCです。受け入れテストの自動化により、この段階でのバグ検出を効率化し、システム稼働後の発生不具合密度(中央値0.000件/KSLOC)という高い信頼性水準の達成を目指すことができます。
結合テスト段階では検出バグ密度が中央値1.600件/KSLOCとなっており、早期段階でのバグ検出と修正が、後工程の負担軽減につながることが定量的に示されています。
受け入れテストを行う場合には、まず現場の業務に即したシナリオの作成が必要となります。使用頻度の高い業務のほか、もし不具合が発生した場合に業務に対する影響が大きいと考えられる箇所を洗い出した上で、これらのシナリオを整理し、自動化ツールなどによってスクリプトへの落とし込みを行います。
受け入れテストを自動化する場合には、エンジニア以外も扱いやすいようにノーコードのツールやローコードのツールのほか、RPAツールを活用することがおすすめです。このようなツールの導入によって、現場担当者が持つ知見を反映しやすくなりますし、変更などが頻繁に発生する場合にも柔軟に対応が可能となります。
すべてのテストを自動化するのではなく、例えばユーザーの操作が複雑な場合など自動化が難しいケースもあります。このような場合には、部分的に自動化を行う、手動でのテストとの併用を検討することが必要になります。このように、「自動化する部分」「手動テストを行う部分」の切り分けを行っていくことも大切です。
受け入れテストの中では、実際にシステムを利用する人が直感的に操作でき、快適に利用できるかも大切です。そのためには、実際に利用者がシステム内外の作業と並行しつつ、問題なくシステムを使えるかを確認することがポイントとなってきます。この点から、自動テストとユーザーによる最終確認とレビューを併用し、現場目線での課題についても継続的に反映していく体制の構築も必要となってきます。
前述の通り、受け入れテストを自動化する場合に導入するツールは、技術者ではなくても扱いやすいツールを選択することがポイントのひとつです。ローコードタイプの自動化ツールの場合には、コーディングスキルが低い場合でも扱える点が特徴です。また、ノーコードツールよりも柔軟性が高いため、より複雑なシナリオにも対応ができる点がローコードツールの特徴です。
テスト自動化ツールを選ぶ場合には、専門的な知識や現場におけるノウハウをチームで共有できる機能があるか、サポート体制がどのようになっているかといった点も確認することが大切です。現在提供されているテスト管理ツールには、シナリオ・ナレッジ共有、コメント機能などが搭載されているものもあり、このようなツールであれば異動や担当が発生した際にも業務の引き継ぎがスムーズに行えます。
受け入れテストは、実際の業務フローを知り尽くした「現場のユーザー」が主導する必要があります。しかし、一般的な自動化ツールは専門知識が必要で、現場の負担になりがちです。「ATgo(エーティーゴー)」なら、業務担当者が直感的に操作でき、検収作業を劇的に効率化できます。

ATgoは、画面上の操作を録画するように記録する「レコーディング機能」を搭載しています。業務担当者が普段通りにシステムを操作するだけで、その手順がそのまま自動テストスクリプトとして保存されます。
コードを書く必要がないため、エンジニアの手を借りずに「業務を知っている人が、テストを作る」という理想的なUAT体制を構築できます。
受け入れテストで最も時間がかかるのが、検収印を押すための「エビデンス(証跡)」の作成です。画面ごとにスクリーンショットを撮り、Excelに貼り付けてコメントを書く作業は膨大な手間がかかります。
ATgoは、テスト実行と同時に画面キャプチャと操作ログを自動取得し、見やすいExcelレポートとして出力します。これにより、報告書作成の手間をゼロにし、スムーズな検収・承認プロセスを実現します。
業務要件を満たしているか判断するには、画面の表示だけでなく「データベースの値が正しく更新されたか」「帳票の数字が合っているか」といった裏側の確認も重要です。
ATgoは、画面操作だけでなくデータベース参照やファイル比較も自動化できます。「画面上は成功しているが、データが更新されていない」といった、目視では発見できない不具合も確実に検知し、高品質なシステムリリースを支援します。
こちらの記事では、受け入れテストの自動化について解説してきました。自動化を行うことによってユーザーの負担軽減とフィードバック高速化などさまざまなメリットが期待できます。自動化に取り組むにあたっては、さまざまなツールの中からニーズに合ったツールを選択するようにすることが大切です。
ATgoは、インターネット非接続のクローズド環境でスムーズに導入・運用が可能なテスト自動化ツールです。UIテストとAPIテストに対応し、金融系システム開発で重視されるエビデンスや比較レポートの作成も自動化。
高精度な画面比較や生成AIによるテスト支援も搭載し、実装コスト・検証コストを大幅に軽減します。テスト自動化サポートプランもあり、導入初期から安心して自動化を進められます。
タップして拡大専門的なプログラミング知識は不要。
画面を操作するだけでテストスクリプトを自動生成する機能や、日本語でテスト手順を提案する機能を搭載。
初心者でも即戦力として自動化に取り組めるため、属人化を防ぎ、採用・教育コストを抑えます。
ATgoはインストール不要・インターネット接続不要で動作するため、セキュリティポリシーの厳しい環境でもスムーズに導入可能です。
まずは1か月の無料トライアルで、その操作性と効果をご体感ください。すべての標準機能を制限なくお試しいただけます。