皆さんお久しぶりです。
ロボティックテクノロジーセンター(RBTC)の李です。
今回はMicrosoft社が公表しているInternet Explorer(以降IE)のサポート終了に関係したお話です。
IEのサポート終了に伴い、UiPath Studioで作成したワークフローのブラウザをIEから他のブラウザに移行する動きが活発になっています。
本記事ではUiPathが公開している移行ツールや自分が実際にワークフローを移行したときに実際に修正が必要だったポイントについてまとめました。
目次
Microsoft社によると、2022年6月15日移行IEのサポートを終了するとのことです。
参考サイト:リンク
これに伴い、各企業では業務で使用するブラウザをIEから他のブラウザ(Google Chrome、Microsoft Edge)に移行する動きが進んでいます。
ブラウザが変わると、当然ながら多少なりともUI画面の要素を認識するためのセレクターにも影響が出てきます。
そのため、UiPath Studioで作成したワークフローのセレクター修正作業が必要になります。
では実際にセレクターを修正するためにはどのように計画を立てたらよいのでしょうか?
それに関してはすでにUiPathが公式にIEから他のブラウザに移行するために必要な計画プロセスを説明した公式サイトがあります。以下にサイトリンクを記載しましたのでご参照下さい。
参考サイト:リンク
また、上記サイトではUiPathが公式に提供しているブラウザのマイグレーションツールもダウンロードすることもできます。
ツールの使い方やツールによって変換される箇所についても説明が記載されていますので、移行計画時にツールを導入するか検討する際にもご覧ください。
本章では実際に自分がブラウザ移行対応を実施した時、どのような修正を行ったかを説明します。
まず初めに自分が実際に実施した移行の流れを以下に記載します。
Ⅰ.UiPathが公開しているマイグレーションツールを使用し、ワークフロー内で使用しているブラウザの設定を一括変換
Ⅱ.置換後のワークフローを実行してみて、移行先のブラウザで問題なく動くか確認
Ⅲ.エラーで処理が異常終了する部分を確認し、1つずつ修正
上記の流れでそれぞれ注意すべきポイントを以下にまとめました。
まずは2章でご紹介したマイグレーションツールを使用してワークフロー内のブラウザ設定を変換します。
ツールの使い方はUiPathが公開している以下サイトをご参考ください。
参考サイト:リンク
今回自分が実際にIEからの移行先として変換を実施したのはMicrosoft Edgeです。
具体的にはMicrosoft EdgeのIEモードで動作するように移行しました。
※この後紹介する修正対応例はIEモードを使用しないMicrosoft Edge移行では対応方法が変わってくる可能性があるので参考程度にご覧ください。
変換後のワークフローを確認したところ、このツールで変換された部分は主に以下でした。
・「ブラウザーを開く」アクティビティのブラウザーの種類プロパティ
・UI操作系アクティビティのセレクター内で「app=’iexplore.exe’」が含まれている部分
※ただし、セレクターに変数を使用したり、手動で編集している部分は置換されませんでした。
基本的にはIEに関する設定やプロパティを移行先ブラウザに一括置換してくれるツールというのが使用してみた自分の所感です。
※この工程は動作確認ができる検証環境をお持ちの場合のみ実施して下さい。
変換後のワークフローを検証環境でリグレッションテストを実施し、各テスト項目を確認しながら処理が問題なく進むか確認します。
実際、変換後のワークフローがそのまま問題なく実行されることはありませんでした。
先述した通り、セレクターを手動で記載している部分があればそこで止まるので1つ1つ確認して修正する必要がありました。
次の工程では実際、どのような修正が必要だったか具体的に説明します。
以下に変換後修正が必要だったポイントをまとめました。
①「UiPath.UiAutomation.Activities」パッケージのバージョン
②手動で設定したセレクター
③「文字を入力」アクティビティのプロパティ設定
1つずつ説明します。
今回移行先のブラウザはMicrosoft Edgeを使用しています。UiPathのワークフローをMicrosoft Edgeで動かせるようにするためにMicrosoft Edgeブラウザに拡張機能を導入する必要があるのですが、それだけでは動かないケースがあります。
その原因に「UiPath.UiAutomation.Activities」パッケージのバージョンが古いことが挙げられます。このパッケージのバージョンが 2019.10.5以降でないとMicrosoft EdgeでUiPathワークフローを動かすことができないため、移行後にMicrosoft Edgeでワークフローが動かないときはまずこのパッケージのバージョンを確認し、古い場合はバージョンを上げてから試してみて下さい。
先述していますが、マイグレーションツールで変換できなかったセレクターを修正します。
自分が実際に修正した事例を以下表にまとめました。
小技ではありますが、コマンドプロンプトを使ってfindstrコマンドからxamlファイル内の「iexplore」と記載されている部分を検索すると修正箇所を整理しやすいです。
これはMicrosoft EdgeのIEモードを使用している場合に必要な修正ポイントかと思います。
「文字を入力」アクティビティのプロパティで「入力をシミュレート」のみTrueにしていると実際に入力欄に文字列が入力されない事象がありました。
この場合は「ウィンドウメッセージを送信」のみTrueにするようにプロパティを修正することで入力処理が正常に行われるようになりました。
以上が、自分が実際にMicrosoft Edge(IEモード)への移行を実施した際に修正した具体的な例です。
いかがだったでしょうか?
今回はMicrosoft EdgeのIEモードが移行先を例とした解説でしたが、移行先がGoogle Chromeなどの別のブラウザだとまた違った修正が必要になるかもしれません。
とはいえ、基本的な移行の考え方は同じだと思いますので具体的にどんな対応が必要か事例をお探しの方の参考になればと思います。
ここまでご覧いただきありがとうございました。