RPA開発で重要なテスト工程。その理由と流れを解説!

RPAを運用し始めた企業で「RPAを開発したのはいいものの、なかなか安定して動かない…」「運用後の実行結果が想定したものとは違う…」といった悩みが多く取り上げられます。実際、RPAの開発プロセスでトラブルが多いシーンは運用段階です。そう言ったトラブルを回避するためには、テスト段階がとても重要となってきます。今回はテスト段階でトラブルを回避できる理由を、以下の目次に沿ってご説明させていただきます。

RPA開発時でテストを行う目的

システム開発時にはテストを必ず行っていますが、どうしてテストが必要なのか改めて考えてみましょう

まず、テストを行う目的は主に2つあります。

  1. 運用段階でRPAが誤作動やエラー停止し、業務に支障を発生させないよう、事前にエラー要員を排除するため。またエラー要因が排除できているか確認するため。
  2. 情報システムの開発を外部に委託した場合に、その最終段階で発注元(ユーザー企業)側が納品を受け付けるか否かを判定するため。

テストの目的によって以下2種類のテストに分けられます。

  1.  単体テスト
  2.  UAT(ユーザー受け入れテスト)

それぞれのテストを誰が実施すべきなのか、具体的な実施手順を説明いたします。

単体テストを実施する流れ

単体テストの目的は、開発を行った後、ロボットの動作にエラー要因が残っていないか確認するために実施します。

そのため、こちらのテストを実施するのはRPA開発者となります。

開発者は以下の流れで単体テストを実施します。

  1. テスト設計書の作成
    以下の観点を元に、テストのプランをあらかじめ設定します。
    • どこまでテストを実施するのか?(テスト範囲の決定)
    • 想定される処理パターンはいくつあるのか?(テストシナリオの洗い出し)
    • テストの際、確認する部分はどこにあるのか?(テスト項目の洗い出し)
    • どのような処理結果が確認できれば問題ないのか?(期待結果)
  2. テストの実施
    テストのプランを順にテストを実施し、実行結果を確認します。
    • 正常終了の動作と成果物の確認
    • 異常終了の動作確認

 このような流れでテストを実施することで、あらかじめ想定されるエラーを回避することができ、運用段階で発生するエラー対応や改修を減らすことができます。そのため無駄な改修を避けることができ安定化したロボットを作成することが可能です。

UATを実施する流れ

UATの目的は外部または社内の専門開発部門にRPAの開発を委託した際の最終段階での発注元(業務ユーザー)側が仕様に沿った動作確認および検収を判定するために実施します。

そのため、こちらのテストはRPAを利用する業務ユーザーが実施します。

業務ユーザーは以下の流れでテストを行います。

  1. ロボットの起動方法を業務フローの説明(開発者から業務ユーザーへ)
  2. ロボットの動作確認
  3. 成果物の確認

⇒開発したRPAが仕様に沿った処理であるか、運用段階前に確認する。

このような流れでテストを実施することで、委託したRPAが本来の想定通りに動いているか確認することができます。そのため運用段階時に仕様通りの処理を行っていないという理由で再度改修を行う必要がなくなります。

単体テストやUATを実施することで得られる効果

単体テストやUATを流れに沿って行うことで、以下のような効果を得ることができます。

  • 運用段階でのエラー発生率の低下

充分なテストを実施せずにRPAロボットの運用を開始すると、安定して動作しない場合には、業務に支障をきたし、業務時間の削減が進むどころか余計な作業が増える場合もあります。

テストを正しく行い、安定稼働することが保証されている状態で運用を行うことでエラーの発生率を低下させ、安定的に想定通りの削減効果を得ることができるようになります。

  • 要件が合致していないことによる無駄な改修の回避

運用開始時にRPAロボットの動作が仕様を満たしていることを確認できていないと、運用開始後に思った処理と違う、想定した結果が出ていないといった事態が発生しかねません。

以下のコラム でドキュメント作成の重要性を説明しましたが、仕様の確認と合わせて、テスト方法(サンプルの抽出やイレギュラーの処理など)を十分検討の上、UATを実施することが重要です。

RPAでロボットを作成する時の仕様書の作り方

この作業は面倒だと思ってしまいがちですが、仕様の確定とセットでUATを正しく行うことで、ロボットと仕様の齟齬が無い状態で運用できるため結果として余計な改修を回避することができ、早く削減効果を得ることができるようになります。

より質の高いRPAを開発するために、テストを実施しましょう!

このように運用段階で発生するエラーや開発要件の認識齟齬は正しくテストを実施することでなくすことが可能です。しかし、どのようなエラーが発生するか事前に認識することが難しい、仕様とそれを検証するテストパターンをどのように決めれば良いか分からないといった悩みを抱える方が多くいらっしゃいます。そのような時こそ、ぜひ開発経験が豊富な弊社にお問い合わせください。要件を満たし安定したRPAの開発をお手伝いさせていただきます。


本記事の執筆者

ペネトレイター株式会社 杉山 葵