代码之家  ›  专栏  ›  技术社区  ›  chaliasos

未执行Android测试

  •  4
  • chaliasos  · 技术社区  · 12 年前

    我创建了一个测试项目,代码与这里所示完全相同:

    http://developer.android.com/tools/testing/testing_ui.html

    我已经在android虚拟设备中上传了jar文件,现在我已经准备好运行测试了。但我总是在控制台上得到这样的输出:

    INSTRUMENTATION_STATUS:流=

    WatcherResultPrinter的测试结果=

    时间:0.0

    正常(0次测试)

    仪器状态代码:-1


    我还用以下代码创建了一个简单的测试:

    public void FailedTest() throws UiObjectNotFoundException {
        assertTrue("This test was executed", false);
    }
    

    以防使用ui元素的代码出现问题。

    程序包名称为 Tests 和类名 Login 所以我运行以下命令:

    adb shell uiautomator运行测试项目.jar-c测试登录

    编辑

    当我在真实的设备上运行它时,我会得到:

    uiautomator:权限被拒绝

    1 回复  |  直到 12 年前
        1
  •  3
  •   JulianHarty    12 年前

    作为第一步,您可以更改测试方法的名称以匹配jUnit3中使用的标准约定吗。 public void testWhatever() { ... } 名称nust的前4个字母小写为“test”,签名为public void,并且该方法不接受任何参数。

    同样,您可以将包名称更改为更标准的小写约定吗?例如org.example.tests。如果您的文件名为tests.java(该类也称为tests),那么您应该能够按如下方式调用它:

    adb shell uiautomator runtest Tests.jar -c com.example.tests.Tests

    如果这些都无济于事,请您修改问题,将Tests.java文件中的全部代码包括在内?

    注意:在我旅行的这个阶段,我没有试图复制您的代码。如果我的建议不能解决您的问题,我可以这样做。

    我会跟进 uiautomator: permission denied 分别地UI Automator测试确实在真实设备上运行。他们不需要将设备扎根。我在标准的Android 4.2.x设备上运行它们。