サイトアイコン わんすけに聞いてみる

UIAutomationでUI操作してみる

■ UI自動化について考える

 

前回なんとなくUI検査ツール使ってみたらAutomationIDってのを発見して、これはもしかしてUI自動化できるのか?という気配を感じた。

Inspectツールの上のプルダウンから、「MSAA」、「UI Automation」が選択できる。

どうもすこし調べた感じだとMSAAの方が昔っからある規格らしい。

AutomationID」は、「UI Automation」の方を選択した時に取得できる。

と、いう訳でUI Automationというライブラリについていろいろ調べて実験した。

 

1..NETフレームワークから使えるようだ。

.NETフレームワークから、System.Windows.Automationというライブラリから使えるようだ。

.NETフレームワーク開発といえば、Visual Studioさん。

まず、参照設定を追加してUI Automationを使えるようにする。

この2つが参照設定で追加されてればいいみたいね。

 

2.とにかくコード書いて試しまくった。

コンソールアプリケーションでプロジェクト作ってMicrosoft Docsとにらめっこ。

動くまであきらめずサンプルコード試しまくった。

なんとなく動く感じになってきたコードがこれ。

 

3.使い方

コマンドプロンプトから3~4個のオプションを指定して起動する。

(:で区切ってオプション指定することでNext・Previousにも対応)

電卓の計算結果が「Text」ってなっててGetValueだと値とれなかったからGetNameを追加した。

でも、このまま結果取得すると「表示は●●です」って出てしまう。。。

 

でも、なんとなくこれをWinActorのスクリプト実行ステージに仕込めばイベントモードのWIN32では操作が座標指定になってしまう要素も操作できるんじゃないかという期待を込めて。

コンパイル済みファイルはこちら

わんすけへ寄付金を送る

このサイトの情報が役に立ったなーって思う方がいらっしゃれば、

是非「わんすけに缶コーヒー1本でもご馳走する」気持ちでポチってあげて下さい?

¥120
Processing ...
Stripe Payments は、ブラウザの Javascript の実行が許可されている必要があります
モバイルバージョンを終了