以前、OfficeとRPAとの関係について考えてみました。
テストの自動化に興味を持ったところから考察を加えていったのですが、Windowsとテストの自動化について調べていると新しい発見等があったので、メモしておきます。SikulixがJavaを用いていますので、Oracleが有償化とか、いろいろあったのでライセンス的にどうなんだろうと思っていたところに、色々情報が目に飛び込んできました。テストの自動化技術とRPAは大変近い部分に属する技術なので、まとめて調べておくだけでも価値はありそうです。
気になった技術等
以下、3点の技術が現在気になっております。新しいほうからリストアップしていきます。Power Automate等は本日の昼休みに見たので、まだなんとも自分の中でも消化できていませんが、気になったのでリストアップ。
- Power Automate
- WinAppDriver UI Recorder
- UI オートメーション
Power Automate
MircosoftのIFTTT(イフト)こと、Flowに追加されたRPA機能の様です。ここを参照。 ノーコード/ローコードで開発できるツール「Power Virtual Agents」も同時に発表 し、Botライクなサービスを構築できるようです。
またFlow自体は以下のようなサービスとなっています。必要に応じて課金してねってことですね。
Microsoft Flowは、無料でも制限なくフローを作成でき、1カ月あたり750回まで実行可能。サービスに対する状態チェックは15分毎。
https://www.publickey1.jp/blog/16/microsoft_flow_1101.html
有料の場合、月額5ドルで1カ月あたり4500回まで実行できてチェックは3分毎。月額15ドルで1カ月あたり1万5000回まで実行できてチェックは1分毎となっています。
WinAppDriver UI Recorder
解説自体はこちらとかが参考になります。UIの要素データを表示するのは「Inspect」がメインだったけれど、記録やスクリプト・コード化もできので、だいぶ自動化のテストコードが書きやすくなった。というように見受けられます。自動化のテストコードをかくならこれだろうか。
実際に試された方のコード・やり方なども参考になると思う。その1・「WinAppDriver UI Recorderを試してみました。」、その2「【C#】WinAppDriverの使い方」、その3「WinAppDriver UI Recorderがリリースされた!」など、自動化のテストコードにするのはこれでよさそうだ。
RPAまで行けるとどうかというとさらに考察とテスト・切り分けが必要かもしれない。
UIオートメーション
古くからあるけど、知らなかった技術。こちらもWinAppDriverと同じような気がするが、WPFとFormsで、UWP等は含まれていないので、少し古い環境ならこちらでもよいかもしれない。PowerShellで書いておられる方もあるので、そういう使い方もできると知っておくと有益かも。
調べた所感
どれかの技術ではSikulix的に画像でボタンを押すなどマルチに使えるかもと思って調べはじめたが、そこまではできない様子。それ以上にRPA等にまで使えるようにするには、もう少しいろいろと工夫であったり、思い付きなども必要かもしれない。テストの自動化だけなら、WinAppDriverで書いておけば、ご利益がありそうなことは間違いなさそうです。