一、UiAutomator的setText不能輸入中文的原因
UiObject.setText(字符串)無法輸入非ASCII字符,如中文。
二、UiAutomator Unicode輸入助手原理
原理:將輸入的原始字符轉換成Unicode文本,再通過中間轉換來輸入各種文字
Jutf7輸入法:中文->Unicode->keycode->轉換爲中文
三、操作步驟
1、下載UiAutomator Unicode輸入助手
打開https://github.com/sumio/uiautomator-unicode-input-helper,點【Download Zip】
下載完成後保存到本地任意目錄,然後解壓,如下圖:
2、打開Eclipse,導入助手
1)點擊File->import->Android->Existing Android Code Into Workspace->Next->Browser->選擇解壓後的助手路徑,步驟如下圖
2)導入完成後,工程裏顯示如下圖:
3、在Eclipse裏編譯安裝apk到手機
手機連電腦,右擊Utf7Ime工程->run as->Android Application
4、在手機裏設置默認輸入法utf7
打開手機的設置-語言和輸入法-默認輸入法-選擇UTF7
5、開始編寫UiAutomator測試用例
1)把路徑\uiautomator-unicode-input-helper-master\UiAutomatorInputSample\src下的com和jp文件夾複製出來,粘貼到Eclipse要測試的工程的src下
2)複製完成後,src下多了三個文件,如下圖
3)編寫測試用例,用obj.setText(Utf7ImeHelper.e(字符串)),就可以實現輸入中文了,如下圖