簡體   English   中英

如何以編程方式點擊iOS鍵盤上的一點

[英]how to programmatically tap a point on the iOS keyboard

我正在使用KIF來自動化我的應用程序,並且正在嘗試自動在UISearchBar鍵入內容並進行搜索。 不幸的是,在輸入搜索文字后,以編程方式單擊搜索按鈕無法找到令人滿意的方法

因此,我只考慮使用KIF的tapScreenAtPoint方法。 該方法的問題在於它執行以下操作:

CGPoint windowPoint = [window convertPoint:screenPoint fromView:nil];
view = [window hitTest:windowPoint withEvent:nil];

期望水龍頭實際觸摸到一個視圖..並且由於鍵盤顯然不是視圖,因此該測試將無法觸發鍵盤上的搜索按鈕。

如何以編程方式點擊鍵盤上的按鈕? 我認為這對於任何自動化測試套件都將非常有用。

聽起來您正在嘗試點擊鍵盤上的“搜索”按鈕。 返回鍵上的輔助功能標簽不遵循任何合理的模式。 在可訪問性檢查器中,您會看到“ SEARCH”,但在所有操作系統版本上可能不一致。

更新資料

您可以通過在enterText...添加\\n來觸發搜索按鈕enterText...

[tester enterTextIntoCurrentFirstResponder:@"query\n"];

選擇器中的搜索按鈕

正確的方法是使用:

[tester clearTextFromAndThenEnterText:@"sample test" intoViewWithAccessibilityLabel:@"SearchField"];

[tester waitForViewWithAccessibilityLabel:@"search"];

[tester tapViewWithAccessibilityLabel:@"search"];

在這種情況下,返回鍵的可訪問性標簽為“搜索”,您可以使用可訪問性檢查器應用程序對其進行驗證。

但是請注意,如果要添加以大寫字母結尾的文本,則不會按下“返回鍵”(搜索/完成/返回/任何內容),例如:

“樣本測試”

即使您嘗試使用“ tapScreenAtPoint”方法,也將按下“ shift”按鈕,而不會按下“ return”按鈕。

它發生在我身上,讓我發瘋了很長時間,直到我弄清楚到底發生了什么。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM