■ 業務自動化のすすめ/RPA推進の秘訣 ■
シナリオのテストは簡単?
ITシステム開発での過去の経験において、テストフェーズの負荷は設計やプログラミングと比べると大きくなる印象がありました。
綿密なテスト計画を立て、細かく実施し、エラーやバグを最大限つぶしていく、という結構体力のかかる作業でした。
RPAでは対象となる業務が業務担当者の周辺の小規模、或いは単純作業のケースが多く、ITシステム向けとは開発もテストも違いがあります。
容易な点もいろいろあり、今回以下のようなポイントでシナリオのテストについてまとめましたので、ご参考にしてください。
● テスト計画・設計について
まず最初に、「テスト計画・設計」はシナリオを作成する前に行うことをお勧めします。
RPAでは基本的に、現状分析・改善検討 → 新プロセス設計 → シナリオ設計 → シナリオ開発とテスト、という流れを弊社ではとっていますが、シナリオ設計の時同時に「テスト計画・設計」を行っています。
メリットとして、テスト内容を予め検討、文書化することにより、シナリオ設計の精度や質が上がることがあるからです。
● テストの種類について
弊社ではテストの種類を大まかに以下のように考えています。
- 機能テスト
いわゆる単体テストレベルのものですが、ノードやライブラリはプロパティ設定が正しい前提で、個々の機能レベル(処理単位)のテストは部分実行で簡単に確認できます。
これらのテストはシナリオの組み立てと同時に行う場合も多いでしょう。 - スルーテスト
シナリオの全体を通して、或いは特定の場合の流れで行うテストです。
使用するテストデータはケースに合わせて独自に加工や複製したものを用意し、予め決めたテスト仕様に沿って行います。
特に一定量の繰り返し処理や全分岐処理、全サブルーチンの処理、エラーハンドリングに行く処理(処理チェックによるエラーや、使用ファイル不備エラー、画像マッチングエラー、WinActorのエラーなど)を組み合わせます。 例外的なテストとして、入力データがゼロ件、繰り返しがゼロ回なども行い、どのような動きになるかを確認します。 - 受け入れテスト
最終テストの位置づけのものです。ロボットの利用者、業務担当者の方が結果を確認できるデータと方法で行います。 一般的に、本番用のデータとほぼ同一のものを業務担当者の方が用意してテストし、月次処理の場合は、過去数か月分のデータで行うこともあります。
本番とほぼ同様のデータのため、実行結果や成果物も業務担当者の方が判断できます。当テストの完了により一連のテストを終了し、シナリオ完成となります。
補足ですが、テスト結果はテスト仕様書へも記録し、使用したテストデータも含めて保管しておきます。まれに本番開始後の障害時に、テスト漏れの確認や再テストでそのテストデータを使うことがあります。
● シナリオのテストは簡単?
WinActorをご利用の皆様はよくご存じのように、実行自体は簡単で、「全体実行」「部分実行」で実施するだけです。
必要なテストケースは使用するテストデータ次第ですので、ケースに合わせてデータを加工し準備します。
しかし、必要なあらゆるパターンのデータを準備することが大変な場合もあります。転記処理項目の種類が多い場合や、条件分岐の条件が多い場合などです。
弊社での経験では、お客様向けのシナリオ開発で複雑で多様なテストケースを別途Excelにマトリクス形式で洗い出し、各データを細かく準備し実施したこともありました。
ただRPAは単純作業も多く、デジタル化されたデータを使用するので、テストデータの準備(加工や複製)は容易で助かります。