2016年10月21日さて昨日の記事でスクリプトから電卓を起動させることができました。今回の記事ではUIAutomationSpyというツールを使って電卓の情報を取得し、スクリプトから電卓に入力させるところまですすめましょう。Worldのようなとても簡単なスクリプトですが、UIAutomationSpyというツールを使用したりするので、極端に退屈な作業にはならないと思います。今回の記事を読んで、他のアプリケーションでも同じような処理をしてみると、より知識が深まりそうですね。スクリプトの内容を確認しよう。まとめ簡単におさらいまず初めに昨日の内容を簡単におさらいしてみましょう。「-PassThru」パラメータでプロセスのオブジェクトを取得しました。...文にしてみるととっても簡単ですね。冒頭でお話ししたUIAutomationSpyツールを使って電卓の情報をみていきましょう。UIAutomationSpyUIAutomationSpyは「Modules\UIAutomation\」に格納されています。「Modules\UIAutomation\UIAutomationSpy.exe」を実行してみましょう。次に「Start」ボタンをクリック。するとカーソルの位置にあるボタンや入力欄の情報がUIAutomationSpyに表示されていると思います。この状態で電卓を起動し、各ボタンにカーソルを合わせてみましょう。UIAutomationSpyの画面にいろいろと情報が表示されていますね。電卓のウィンドウ名は’電卓’、電卓のボタン「2」はAutomationIdが「num2Button」で、クラスは「Button」、そして名前が「2」であることがわかりました。この情報をもとにスクリプトを作成してみましょう。Out-Null簡単ですがこんなところでいいでしょう。スクリプトを実行してみましょう。.\Script\UIAutomationCalc.ps1電卓が立ち上がり、アッという間に「7」という結果が表示されたと思います。ここで一つ注意点です。私はWindows10環境で動かしているので、8.1や7では動作が異なるかもしれません。実際にUIAutomationSpyを使って各ボタンの情報を確認してみてくださいね。スクリプトの内容を確認しよう。簡単にスクリプトの内容を確認してみましょう。'電卓'ここで電卓のウィンドウを特定しています。(本来は$processから取得できそうですが...勉強します。]でシングルクリックします。]パラメーターは取得した出力結果を破棄します。上記の命令で本来PowerShellに出力される内容を、出力しないように設定しています。内容だけ見ると全然難しくないように感じますね。まとめ今回の記事でアプリケーションのUI要素(ボタンや入力欄)の情報を取得し、スクリプトから操作することができました。あとはプログラムと同様に制御文を記述すれば延々と計算させ続けるようなことも簡単にできそうです。次回の記事で電卓に30秒間ほど延々計算させ続けるようなスクリプトを書いてみましょう。その1技術者となって一番多く、そして面倒な作業はテストではないでしょうか。単体テスト、システムテスト、結合テストとマイルストーンに従って、ちょくちょくテストしないといけません。...【PowerShell/UIAutomation】アプリケーション操作のTips!ここ数日PowerShellのライブラリ、UIAutomationを使ってアプリケーション操作自動化について記事を作成しました。その4昨日までの記事でスクリプトから電卓のボタンを押下させ、計算させることができました。この記事でループを作成し、耐久テストのように延々と計算させ続ける処理に変更してみましょう。その2前回の記事で、UIAutomationのDL、実行ポリシーの変更が完了しました。今回はUIAutomationを使って電卓を起動させてみましょう。