2017-06-15 45 views
1

我在寫一個測試來檢測android鍵盤的預測部分是否被禁用。通常要檢測這些類型的東西,我會take an XML screenshot in UI Automator,然後使用資源ID來檢測它,但由於鍵盤被記錄爲覆蓋,它不會顯示。如何測試預測鍵盤是否在Android上被禁用?

我使用的資源ID創建的字符串和實例他們是這樣的:

UiObject incidentClick = uiDevice.findObject(new 
UiSelector().resourceId(UIResourceStrings.This_Is_The_Resource_String)); 

然而,因爲鍵盤上沒有自己的資源串不起作用。

我想過使用(x,y)座標來檢查,但我不知道我將如何實現。有關如何做這樣的事情的任何想法?

回答

0

不是一個完整的解決方案,而是一種解決方法。我首先獲得了文本的值,然後出現了click(x,y) function click on the space where one of the suggestions,然後首先獲取了文本的值,並檢查了它們是否相同。如果它們不是,那麼鍵盤預測器已啓用並且測試將失敗。

只要注意,預測器應該給出與原始不同的單詞。因此,一個UI對象將被創建,如果你的文字== uiDevice.findObject(new UiSelector().text("text"));

0

如果使用UiAutomator 2.0,你可以在你的情況下,執行ADB shell命令,並得到鍵盤的狀態,很容易這樣,

"adb dumpsys input_method |grep mInputShow" 

當mInputShow的值爲true時,鍵盤被打開。

相關問題