やりたいこと
前回の続きになります。
UWPアプリの簡単なテスト(スモークテスト?)をUWSCでやってみるの4回目です。
// TC7 終了 CloseApp() // 終了 PROCEDURE CloseApp() WaitWindowText("memotter", "What", 10) id = GETID("memotter") //①とじるボタンをクリック closebtn = CLKITEM(id, "memotter を閉じる") IF closebtn = TRUE PRINT "OK とじるボタン押下成功" ELSE PRINT "NG とじるボタン押下失敗" ENDIF FEND // ウィンドウの中のテキストが表示されるのを待つ FUNCTION WaitWindowText(WindowTitle, text, timeOut) RESULT = FALSE // ウィンドウが表示されるのをtimeOutの時間まで待つ FOR i = 0 TO timeOut //ウィンドウのID取得 id = GETID(WindowTitle) staticText = GETITEM(id, ITM_STATIC) IF staticText <> 0 FOR j = 0 TO staticText -1 n = POS(text, ALL_ITEM_LIST[j]) IFB n >= 1 // PRINT text + "が見つかった" BREAK 2 ELSE // PRINT text + "が見つからない" ENDIF NEXT ELSE PRINT "static text なし" ENDIF // 1秒待機 SLEEP(1) NEXT FEND----
解説
①とじる
標準関数のCLKITEM()でとじるボタンをクリックしてます。
CLKITEM()の第2引数に設定しているとじるボタンのコントロール名は、GetItem()という関数を使って調べました。
CLKITEM()の第2引数に設定しているとじるボタンのコントロール名は、GetItem()という関数を使って調べました。
GetItem()でウィンドウのコントロールの名前などを調べることができるので、便利です。アイテム名を調べるのに使ったソースはこちらになります。
OS標準の電卓アプリようのサンプルです。電卓の部分を変更するとほかのアプリでも使えます。
GID = GETID("電卓") GetItemAll(GID) PROCEDURE GetItemAll(GID) PRINT "ボタン" NUM = GETITEM(GID,ITM_BTN) FOR i = 0 TO (NUM-1) PRINT (i+1) + "番目:<#TAB>" + ALL_ITEM_LIST[i] NEXT PRINT "リストボックス、コンボボックス" NUM = GETITEM(GID,ITM_LIST) FOR i = 0 TO (NUM-1) PRINT (i+1) + "番目:<#TAB>" + ALL_ITEM_LIST[i] NEXT PRINT "タブコントロール" NUM = GETITEM(GID,ITM_TAB) FOR i = 0 TO (NUM-1) PRINT (i+1) + "番目:<#TAB>" + ALL_ITEM_LIST[i] NEXT PRINT "メニュー" NUM = GETITEM(GID,ITM_MENU) FOR i = 0 TO (NUM-1) PRINT (i+1) + "番目:<#TAB>" + ALL_ITEM_LIST[i] NEXT PRINT "ツリービュー" NUM = GETITEM(GID,ITM_TREEVEW) FOR i = 0 TO (NUM-1) PRINT (i+1) + "番目:<#TAB>" + ALL_ITEM_LIST[i] NEXT PRINT "リストビュー" NUM = GETITEM(GID,ITM_LSTVEW) FOR i = 0 TO (NUM-1) PRINT (i+1) + "番目:<#TAB>" + ALL_ITEM_LIST[i] NEXT PRINT "エディットボックス" NUM = GETITEM(GID,ITM_EDIT) FOR i = 0 TO (NUM-1) PRINT (i+1) + "番目:<#TAB>" + ALL_ITEM_LIST[i] NEXT PRINT "スタティックコントロール" NUM = GETITEM(GID,ITM_STATIC) FOR i = 0 TO (NUM-1) PRINT (i+1) + "番目:<#TAB>" + ALL_ITEM_LIST[i] NEXT PRINT "ステータスバー" NUM = GETITEM(GID,ITM_STATUSBAR) FOR i = 0 TO (NUM-1) PRINT (i+1) + "番目:<#TAB>" + ALL_ITEM_LIST[i] NEXT PRINT "ツールバー" NUM = GETITEM(GID,ITM_TOOLBAR) FOR i = 0 TO (NUM-1) PRINT (i+1) + "番目:<#TAB>" + ALL_ITEM_LIST[i] NEXT PRINT "アクセシビリティ用インターフェース経由でのクリック可能なオブジェクト" NUM = GETITEM(GID,ITM_ACCCLK) FOR i = 0 TO (NUM-1) PRINT (i+1) + "番目:<#TAB>" + ALL_ITEM_LIST[i] NEXT PRINT "アクセシビリティ用インターフェース経由でのテキスト" NUM = GETITEM(GID,ITM_ACCTXT) FOR i = 0 TO (NUM-1) PRINT (i+1) + "番目:<#TAB>" + ALL_ITEM_LIST[i] NEXT FEND
結果
アプリを閉じることができました。
これで一応やりたいことが全部できました。
スクリーンショットをとるなどもうすこしブラッシュアップしていきたいので、
0 件のコメント:
コメントを投稿