やりたいこと
前回の続きになります。
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 件のコメント:
コメントを投稿