无法使用adb运行多个测试

时间:2015-11-12 18:11:31

标签: android testing command-line adb android-espresso

我可以使用以下命令单独运行我的测试:

C:\Google Drive\Testing>adb -s C4F12CC05723D6E shell am instrument -w -e class c
om.example.project.test.testcases.basictests.Test1 com.example.
project.test/android.support.test.runner.AndroidJUnitRunner

com.example.project.test.testcases.basictests.test1:.

Time: 23.807

OK (1 test)

但我无法在套件中运行所有测试:

C:\Google Drive\Testing>adb -s C4F12CC05723D6E shell am instrument -w com.example
.project.test/android.support.test.runner.AndroidJUnitRunner


Time: 0

OK (0 tests)

我尝试运行一系列测试时获得相同的结果。

跑步者似乎没有抱怨或任何东西,它只是认为有0个测试,当有几个。

我在android studio中运行测试时遇到同样的问题,我可以运行单个测试,但不能运行完整套件或完整包。

我正在使用使用AndroidJUnitRunner的espresso 2。

测试包与正在测试的应用程序位于同一项目中。包括主要活动在内的核心应用程序活动位于com.example.project中,测试包是此子包; com.example.project.test

如何调查此问题?

2 个答案:

答案 0 :(得分:1)

我自己想出来了。

我的问题特别是我的android项目的结构,测试包位置导致跑步者找到我的测试的问题,我把它们移动到 src / androidTest / java / test 现在我可以运行完整的套件和完整的测试包。

答案 1 :(得分:0)

在尝试运行套件时,您似乎没有提供测试类。

根据Android documentation

  

要在UnitTests类中运行所有测试,请输入:

     

$ adb shell am instrument -w \   -e class com.android.demo.app.tests.UnitTests \   com.android.demo.app.tests / android.test.InstrumentationTestRunner

您还可以运行测试类和整个类的子集。

  

要在UnitTests中运行所有测试,并在FunctionTests中运行testCamera方法,请输入:

     

$ adb shell am instrument -w \   -e class com.android.demo.app.tests.UnitTests,com.android.demo.app.tests.FunctionTests#testCamera \   com.android.demo.app.tests / android.test.InstrumentationTestRunner