如何使用sbt运行Android测试?

前端之家收集整理的这篇文章主要介绍了如何使用sbt运行Android测试?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我为我的应用程序开发了一套使用Scrum的 Android测试,它使用Robotium库.该套件适用于所有意图和目的,标准的Android JUnit测试项目,如果从Eclipse启动,则可以成功运行.

我已经成功构建并运行我的主要Android应用程序与sbt android-plugin.主要应用程序位于[ProjectDir] / src / main中.我也能够成功地在[ProjectDir] / tests / src / main目录下的build my Android test application.我检查了仿真器,测试应用程序似乎已经正确安装了android-plugin的测试/ android:install-emulator命令.但是,当我尝试通过sbt tests / android:test-emulator运行测试项目时,我得到:

...
Test results for InstrumentationTestRunner=
Time: 0.001

OK (0 tests)

我怎么能得到sbt的android-plugin来识别该项目包含JUnit测试并运行它们?

解决方法

这里使用的命名约定与正常的JUnit相同,因此您需要将测试命名为xxxTest.class.他们还需要扩展TestCase(AndroidTestCase,InstrumentationTestCase等).

要重申,eclipse会运行一个命令,看起来像:

adb shell am instrument -w -e class com.android.foo.FooTest,com.android.foo.TooTest com.android.foo/android.test.InstrumentationTestRunner

它会将类名追加到命令中,因此命名约定可能不适用.

如果你从sbt运行,它将运行

adb shell am instrument -w com.android.foo/android.test.InstrumentationTestRunner

这将找到应用程序com.android.foo的程序包名称下的所有类,并使用someClassNameTest完成.

猜你在找的Android相关文章