【RPA】Power Automate Desktopでテスト自動化
2021年にMicrosoftからRPQツールであるPower Automate Desktopの無償利用化が発表されました。 有償と比べて機能の制限はあるものの、RPAのを体感する上では十分な機能が利用できます。 今回はPower Automate Desktopの利用方法や使ってみた際のクセのようなもの システムテストの自動化検討などまとめております。
Power Automate Desktopとは
Microsoft が提供する業務プロセスを自動ワークフロー化する夢のようなツールです。 いままで何時間も同じ作業をしていたものを、自動ワークフロー化することで Power Automate Desktopがヒトに代わって作業をしてくれます。 今話題のRPAの一つに位置付けられます。
マウス操作のみでフローを組み立てることができるので ノーコードでプログラミングしているように、手軽に自動化が実現できます。 公式サイトはこちら
Power Automate Desktop利用方法(RPA)
Power Automate Desktopを利用するためには、ソフトウェアをインストールする必要があります。 本稿ではインストール手順などは割愛し、Power Automate Desktopの利用方法にフォーカスを当てて解説していきます。
フロー作成画面
一番最初に表示される画面です。
インストール後に開かれるのがこちらの画面です。 まずはこれから作成するワークフローに名称を付けます。
まずは触ってみるということを目的としているので、フロー名は「テスト」などと入力をしてください。 ワークフローを作成するとこのような画面が表示されます。
Power Automate Desktopメイン画面
①アクション
「ファイル表示」「テキストボックスへの書き込み」「条件分岐」など 選択できる各種操作が並んでいます。 基本的には、このアクションを並べていくことでワークフローを作成します。 様々なアクションが用意されていますが、ここではよく使うアクションのいくつかをご紹介します。
ファイル | アクション |
---|---|
ファイル | 「ファイルの移動・削除」や「CSVの読み書き」などファイルに関連する操作が可能です。 テキストファイルに関するアクションがメインです。 |
UIオートメーション | デスクトップ上でワークフローを自動化する際に主に使うアクションです。 「テキストボックスへの入力」「ウィンドウからの情報取得」などの操作が定義されています。 |
Web | web上のリソースに対する操作が定義されています。 具体的には「リソースのダウンロード」「webサービスの呼び出し」が可能です。 |
Webオートメーション | webブラウザを利用してワークフロー自動化する際に主に使うアクションです。 「webブラウザの立ち上げ」「テキストフィールドへの入力」「ボタンの押下」などのブラウザ操作が一通り可能です。 |
Exel | アクション名そのままで、Exelの操作が定義されています。 Exelファイルを開きセル位置を指定して入力を行うといったことが可能です。 |
他にも、AWSやAzureなどのクラウドサービスの利用やファイルの暗号化など 多くのアクションが定義されています。 これらのアクションを組み合わせることで、様々なフローを自動化することができます。
②フロー
定義したアクションをつなげて、構築したフローが定義されます。 下記画像は「ブラウザを立ち上げて、新規会員登録を行う」というフローを定義しています。
まず1.でブラウザを立ち上げています。 その後の2~11はUI要素という作業で、抽出したウィンドウ内の要素にテキスト入力し 12で「新規登録」ボタンを押下しています。 これでブラウザを立ち上げて、会員登録を行うというフローを自動化できます。
③変数
プログラムのように変数を定義し利用することができます。 アクションにも複数の変数の定義が準備されており、下記はランダムな数値を生成し変数に格納しております。
下部に「生成された変数 RndomNumber」と記載されており この変数を利用します。 利用方法は下記のようになります。
このように「%」で変数名を挟むことで、変数に格納された値を利用することができます。
会員登録自動化ご紹介
こちらは実際にwebオートメーションを使って構築した自動化機能を 動画にいたしました。 実際にこのような形で自動でアクションが進んでいきます。 何度も登録しているので、重複エラーになってしまっておりますが 動きはご確認頂けます。
UI要素の利用
webブラウザを利用したフローを構築するためには、テキストフィールドの位置などを 事前にフロー上に定義しておく必要があります。これがUI要素というものです。 利用するにはブラウザごとにpower automate desktop用の拡張機能をインストールする必要があります。 主要ブラウザはそれぞれ拡張機能がありますが、ブラウザは『Edge』がお勧めです。 やはりMicrosoft製のブラウザを利用した方が相性がよさそうです。 Chromeなどだと、うまくUI要素が認識されないことがあります。
このように赤枠が表示され、Ctrlキーを押しながらテキストフィールドなどをクリックすることで UI要素が追加できます。
UI要素追加のコツ
UI要素の追加ですが、ちょっとしたコツのようなものがあり
うまく登録しないとwebオートメーションで利用できません。
環境によるものかもしれませんが、一例として参考にしてください。
まず、要素を追加する際にCtrlキーを押しながらページ内をクリックします。
そうすると、下記のように<body>で赤枠が囲われるようになります。
この状態で、選択したいテキストフィールドにマウスを移動します(※まだクリックしない!)
そして少し待っていると、下記のように登録したいテキストフィールドがEditの赤枠で囲われるようになります。
この状態でクリックすると、webオートメーションなどのテキスト入力で利用できるように 登録することができます。 なぜこんな小難しいのかは不明ですが、とりあえず私はこの方法で問題なく登録することができました。
改善してほしいこと
テキストフィールドに「0」始まりの文字列が登録できない!
どういうことかというと、エクセルなどのように「090~~」と0始まりの文字列を登録しても 先頭の「0」が勝手に消えてしまうという事象が発生しております。
どなたか解決方法ご存じであれば教えてください。
私も同じそれにはまりました。
先頭の「0」のみ特殊キーの挿入からテンキーを選びそこから「テンキー0」を選択しました。
そんな方法があったのですね!
コメントありがとうございます。
いいえ。
なぜ動かないのかずっと悩んでました。
バグでしょうね