一、UiAutomator的setText不能输入中文的原因

UiObject.setText(字符串)无法输入非ASCII字符,如中文。


二、UiAutomator Unicode输入助手原理

原理:将输入的原始字符转换成Unicode文本,再通过中间转换来输入各种文字

Jutf7输入法:中文->Unicode->keycode->转换为中文


三、操作步骤

1、下载UiAutomator Unicode输入助手

打开https://github.com/sumio/uiautomator-unicode-input-helper,点【Download Zip】

wKioL1ehZk-ykFXOAACSgMG7tr0425.png


下载完成后保存到本地任意目录,然后解压,如下图:

wKiom1ehZt3SUSO5AAAxoZX30rI980.png


2、打开Eclipse,导入助手

1)点击File->import->Android->Existing Android Code Into Workspace->Next->Browser->选择解压后的助手路径,步骤如下图

wKiom1ehZ8HASiDJAABT24YqaiI294.png

wKioL1ehaHjSfC_aAABgrA8GoE4871.png

wKiom1ehaHijXfCnAACkkJC7c94322.png

wKioL1ehaHjBnaYUAABjHWQySkY232.png

2)导入完成后,工程里显示如下图:

wKioL1ehaNXSsjA0AABPg2y63nI998.png

3、在Eclipse里编译安装apk到手机

手机连电脑,右击Utf7Ime工程->run as->Android Application

wKiom1ehagfwK6IkAACsu6_PgMg720.png

4、在手机里设置默认输入法utf7

打开手机的设置-语言和输入法-默认输入法-选择UTF7

wKioL1eham7QEVRyAACJi-WObE8737.png

5、开始编写UiAutomator测试用例

1)把路径\uiautomator-unicode-input-helper-master\UiAutomatorInputSample\src下的com和jp文件夹复制出来,粘贴到Eclipse要测试的工程的src下

wKioL1eha-KRcgUMAAAXd6k1__M252.png

2)复制完成后,src下多了三个文件,如下图

wKioL1ehbI2gAW4HAAAWW3r7_QE238.png

3)编写测试用例,用obj.setText(Utf7ImeHelper.e(字符串)),就可以实现输入中文了,如下图

wKioL1ehbZGyHDrWAAA1bT-DqOk431.png