用UiAutomator总是报UiObjectNotFoundException,运行了老师的项目也是这样,不知道是什么原因

来源:

小熊的熊仔饼

2016-12-18

C:\Users\bayMax>adb shell uiautomator runtest jia.jar -c com.imooc.lang.SetLanguage
Warning: This version of UI Automator is deprecated. New tests should be written using
UI Automator 2.0 which is available as part of the Android Testing Support Library.
See https://developer.android.com/training/testing/ui-testing/uiautomator-testing.html
for more details.
INSTRUMENTATION_STATUS: numtests=1
INSTRUMENTATION_STATUS: stream=
com.imooc.lang.SetLanguage:
INSTRUMENTATION_STATUS: id=UiAutomatorTestRunner
INSTRUMENTATION_STATUS: test=testSetLanguage
INSTRUMENTATION_STATUS: class=com.imooc.lang.SetLanguage
INSTRUMENTATION_STATUS: current=1
INSTRUMENTATION_STATUS_CODE: 1
INSTRUMENTATION_STATUS: numtests=1
INSTRUMENTATION_STATUS: stream=
Error in testSetLanguage:
com.android.uiautomator.core.UiObjectNotFoundException: UiSelector[DESCRIPTION=
搴旂敤]
        at com.android.uiautomator.core.UiObject.clickAndWaitForNewWindow(UiObject.java:439)
        at com.android.uiautomator.core.UiObject.clickAndWaitForNewWindow(UiObject.java:417)
        at com.imooc.lang.SetLanguage.SetEnglish(SetLanguage.java:25)
        at com.imooc.lang.SetLanguage.testSetLanguage(SetLanguage.java:16)
        at com.android.uiautomator.testrunner.UiAutomatorTestRunner.start(UiAutomatorTestRunner.java:160)
        at com.android.uiautomator.testrunner.UiAutomatorTestRunner.run(UiAutomatorTestRunner.java:96)
        at com.android.commands.uiautomator.RunTestCommand.run(RunTestCommand.java:91)
        at com.android.commands.uiautomator.Launcher.main(Launcher.java:83)
        at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
        at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:262)

INSTRUMENTATION_STATUS: id=UiAutomatorTestRunner
INSTRUMENTATION_STATUS: test=testSetLanguage
INSTRUMENTATION_STATUS: class=com.imooc.lang.SetLanguage
INSTRUMENTATION_STATUS: stack=com.android.uiautomator.core.UiObjectNotFoundException: UiSelector[DESCRIPTION=搴旂敤]
        at com.android.uiautomator.core.UiObject.clickAndWaitForNewWindow(UiObject.java:439)
        at com.android.uiautomator.core.UiObject.clickAndWaitForNewWindow(UiObject.java:417)
        at com.imooc.lang.SetLanguage.SetEnglish(SetLanguage.java:25)
        at com.imooc.lang.SetLanguage.testSetLanguage(SetLanguage.java:16)
        at com.android.uiautomator.testrunner.UiAutomatorTestRunner.start(UiAutomatorTestRunner.java:160)
        at com.android.uiautomator.testrunner.UiAutomatorTestRunner.run(UiAutomatorTestRunner.java:96)
        at com.android.commands.uiautomator.RunTestCommand.run(RunTestCommand.java:91)
        at com.android.commands.uiautomator.Launcher.main(Launcher.java:83)
        at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
        at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:262)

INSTRUMENTATION_STATUS: current=1
INSTRUMENTATION_STATUS_CODE: -1
INSTRUMENTATION_STATUS: stream=
Test results for WatcherResultPrinter=.E
Time: 11.771

FAILURES!!!
Tests run: 1,  Failures: 0,  Errors: 1


INSTRUMENTATION_STATUS_CODE: -1

C:\Users\bayMax>


写回答

1回答

城下秋草

2016-12-18

at com.imooc.lang.SetLanguage.SetEnglish(SetLanguage.java:25)

--- 25行报错,说明没找到“应用”这个控件。确认下你运行的起始界面是否是设备解锁后的主界面,显示所有应用的这个控件是否在界面上


Warning: This version of UI Automator is deprecated. New tests should be written using

UI Automator 2.0 which is available as part of the Android Testing Support Library.

--另外看你运行的UiAutomator版本比较老,官方不再支持了,建议还是更新一下

0
0

Android自动化测试实战 Java篇主流工具,框架,脚本

Android测试工程师大逆转的必备技能课程

1362 学习 · 476 问题

查看课程