TestComplete教程:光學(xué)字符識別(三)模擬用戶操作
TestComplete是一款具有人工智能的自動UI測試工具,利用自動化測試工具和人工智能支持的混合對象識別引擎,輕松檢測和測試每個桌面,Web和移動應(yīng)用程序。使用TestComplete,可以提高測試覆蓋率并幫助提供經(jīng)過實戰(zhàn)考驗的高質(zhì)量軟件。本文描述了在光學(xué)字符識別教程中,如何在用戶界面元素被其文本內(nèi)容識別的情況下模擬用戶操作。
在TestComplete中,可以使用光學(xué)字符識別來根據(jù)顯示的文本查找屏幕區(qū)域,并模擬該區(qū)域上的用戶操作(例如,單擊它)。
在關(guān)鍵字測試中
使用OCR操作可以找到包含特定文本的屏幕區(qū)域,然后在該區(qū)域或附近區(qū)域模擬用戶操作:
1、將操作添加到測試中。
2、選擇要在其上模擬用戶操作的屏幕對象。TestComplete將識別該對象中的所有文本。所選對象必須存在于系統(tǒng)中,并且必須在屏幕上可見。
注意:要在移動應(yīng)用程序中指定對象,可以在“移動屏幕”窗口中選擇它。被測應(yīng)用程序和運行該應(yīng)用程序的移動設(shè)備都必須準(zhǔn)備進行測試,以使TestComplete能夠訪問它們。要獲取移動設(shè)備的整個屏幕,可以使用Mobile.Device.Desktop屬性。
3、選擇所需的文本片段。如果有幾個包含文本的片段,請指定所需的片段:
4、要在包含片段的屏幕區(qū)域上模擬用戶操作,請選擇適當(dāng)?shù)姆椒ǎ?/p>
5、如果需要,請指定方法參數(shù)。
6、要模擬鼠標(biāo)單擊(或觸摸)文本片段旁邊的區(qū)域,請選擇ClickNextTo(或TouchNextTo)方法。要在文本片段旁邊的區(qū)域中模擬鍵盤輸入,請選擇SendKeys方法。指定目標(biāo)區(qū)域位置:
在腳本中
1、使用該OCR.Recognize方法可以識別對象或屏幕區(qū)域包含的文本。
2、使用Block或BlockByText屬性來獲取包含特定文本片段的區(qū)域。
3、要在包含文本片段的屏幕區(qū)域上模擬用戶操作,請調(diào)用適當(dāng)?shù)姆椒?。例如?/p>
JavaScript,JScript | OCR.Recognize(Aliases.myApp.wndForm).BlockByText("*clock*", spLargest).Click(); |
Python | OCR.Recognize(Aliases.myApp.wndForm).BlockByText("*clock*", spLargest).Click() |
VBScript | Call OCR.Recognize(Aliases.myApp.wndForm).BlockByText("*clock*", spLargest).Click |
DelphiScript | OCR.Recognize(Aliases.myApp.wndForm).BlockByText('*clock*', spLargest).Click; |
C#Script | OCR.Recognize(Aliases["myApp"]["wndForm"])["BlockByText"]("*clock*", spLargest)["Click"](); |
4、要模擬在包含文本片段的區(qū)域旁邊的屏幕區(qū)域上的單擊(或觸摸),請調(diào)用ClickNextTo(或TouchNextTo)方法并指定目標(biāo)區(qū)域的位置。例如:
JavaScript,JScript | OCR.Recognize(Aliases.myApp.wndForm).BlockByText("*clock*", spLargest).ClickNextTo(toRight, 15); |
Python | OCR.Recognize(Aliases.myApp.wndForm).BlockByText("*clock*", spLargest).ClickNextTo(toRight, 15) |
VBScript | Call OCR.Recognize(Aliases.myApp.wndForm).BlockByText("*clock*", spLargest).ClickNextTo(toRight, 15) |
DelphiScript | OCR.Recognize(Aliases.myApp.wndForm).BlockByText('*clock*', spLargest).ClickNextTo(toRight, 15); |
C#Script | OCR.Recognize(Aliases["myApp"]["wndForm"])["BlockByText"]("*clock*", spLargest)["ClickNextTo"](toRight, 15); |
要在文本片段旁邊的屏幕區(qū)域中模擬鍵盤輸入,請調(diào)用該SendKeys方法并指定要按下的鍵和目標(biāo)區(qū)域的位置。例如:
JavaScript,JScript | OCR.Recognize(Aliases.myApp.wndForm).BlockByText("*item*", spLargest).SendKeys("test", toRight, 15); |
Python | OCR.Recognize(Aliases.myApp.wndForm).BlockByText("*item*", spLargest).SendKeys("test", toRight, 15) |
VBScript | Call OCR.Recognize(Aliases.myApp.wndForm).BlockByText("*item*", spLargest).SendKeys("test", toRight, 15) |
DelphiScript | OCR.Recognize(Aliases.myApp.wndForm).BlockByText('*item*', spLargest).SendKeys('test', toRight, 15); |
C#Script | OCR.Recognize(Aliases["myApp"]["wndForm"])["BlockByText"]("*item*", spLargest)["SendKeys"]("test", toRight, 15); |
支持的用戶操作
在TestComplete通過其文本內(nèi)容識別的屏幕區(qū)域上,可以模擬以下用戶操作:
在桌面和Web應(yīng)用程序中
點擊并雙擊:
Click
ClickM
ClickR
DblClick
DblClickM
DblClickR
默認情況下,這些方法模擬在指定屏幕區(qū)域中心的點擊。要模擬該區(qū)域特定點的點擊,請使用適當(dāng)?shù)膮?shù)調(diào)用方法。
ClickNextTo
此方法模擬在識別的文本塊的左側(cè),右側(cè),頂部或底部指定距離處的單擊。
懸停鼠標(biāo):
Hover
拖動:
Drag
DragM
DragR
在移動應(yīng)用中
觸摸和長時間觸摸:
Touch
LongTouch
注意:在Android設(shè)備上,該方法的HoldDuration參數(shù)不受支持,將被忽略。
默認情況下,這些方法模擬指定區(qū)域中心的觸摸。要模擬該區(qū)域特定點的點擊,請使用適當(dāng)?shù)膮?shù)調(diào)用方法。
TouchNextTo
此方法模擬位于識別的文本塊的左側(cè)、右側(cè)、頂部或底部指定距離處的觸摸。
拖動:
Drag
在所有應(yīng)用中
鍵盤輸入:
SendKeys
此方法在屏幕區(qū)域中模擬鍵盤輸入,該屏幕區(qū)域位于已識別的文本塊的左側(cè)、右側(cè)、頂部或底部指定距離處。
本文內(nèi)容到這里就結(jié)束了,但是教程內(nèi)容還在不斷更新中,感興趣的朋友可以繼續(xù)關(guān)注我們哦~您也可以下載TestComplete試用版評估一下~
相關(guān)內(nèi)容推薦:
TestComplete教程:光學(xué)字符識別(一)處理UI元素
TestComplete教程:光學(xué)字符識別(二)識別屏幕上文本須滿足的要求
想要購買TestComplete正版授權(quán),或了解更多產(chǎn)品信息請點擊“咨詢在線客服”