WinActorを使えば様々な動作が自動化できます。そして、シナリオを作成する方法は一通りではなく、様々な方法があります。しかし、シナリオ開発においては非推奨とされるシナリオの実装方法があります。その理由は、使ってしまうことでシナリオのエラーが生じやすくなったり、シナリオを運用・保守する際に著しく障害になるからです。
今回は、WinActorのシナリオ開発をする際に避けるべきノード・ライブラリ・実装方法について紹介します。
動画でも解説しております(記事と同内容です)
ノード「Excel操作」
ノード「Excel操作」は、ある程度WinActorになれた人にとっては確実に避ける実装方法です。
シナリオ実行のたびに新規のExcelプロセスが起動してしまうため、Excelを起動しているのにもかかわらず、別で起動したり予期しない動作が生じてしまうなど、非常にくせ者のノードです。
WinActorのアソシエイト試験、エキスパート試験の受験経験者であれば、「Excel操作」は使用しないように案内されますが。つまるところシナリオ実装でも使えない代物だからです。私もこのノードを使ったことはほとんどありません。
個人的にはどうしてノードから削除しないのか疑問ではありますが、皆様はノードではなくライブラリを使用するようにしましょう。
%変数%記法
%変数%記法は、「変数値設定」といった一部のノードで、直接変数を値として設定できる方法です。例えばExcelのセルを指定するとき、数字を変数で格納したあと、変数値設定で列を冒頭に追加する、といった使い方が挙げられます。
自分も最初のころは「このやり方便利だな」と思っていたのですが、保守するときにある問題点がわかりました。
この記法を使ってしまうと、変数がどのライブラリで使用しているか分からなくなってしまうのです。
変数自体を変更したりする場合、「変数参照ツリー」から変数が使用されているノードを確認しますが、「%変数%記法」を使用した場合、「変数参照ツリー」には反映されず、のちに変数自体を変更したり削除した場合誤作動が生じます。
シナリオを作成する際は問題ないのですが、後々の保守を考えると避けるべき方法です。
代わりに「文字列の連結」を使用するようにしましょう。
ライブラリ「Excel操作(全て閉じる)」「IE操作(全て閉じる)」
これらのライブラリは、開いているウィンドゥをすべて閉じることができるので、ウィンドウごとに設定しないで済みます。
ただ、問題点もありまして、「未保存のファイルに対して保存せず閉じてしまう」という動作が発生してしまいます。(バージョンにもよりますが)誤作動防止の観点からも、操作しているウィンドウは逐一保存するか、保存せず閉じるかをライブラリで設定してあげましょう。
WinActorのシナリオ開発はさまざまなノード・ライブラリで実装できます。基本的にどんな方法でも処理速度や保守性などの問題がなければ使用してかまいませんが、以上に挙げた方法は避けるようにしましょう。