Java 如何在设备或模拟器上运行Android的单元测试?

Java 如何在设备或模拟器上运行Android的单元测试?,java,android,unit-testing,jvm,continuous-integration,Java,Android,Unit Testing,Jvm,Continuous Integration,据我所知,在android studio的新子项目中,该集成测试在设备或模拟器上运行,检查应用程序的功能是否取决于android SDK。但我确实有一些方法不依赖于android。他们的测试,我想花在JVM上,避免运行模拟器。从Android Studio的1.1.0版RC1和gradle插件开始,您可以在JVM上运行JUnit 4单元测试,而无需设备 看看这个 如果你有最新版本的Android Studio(1.1及以上),你不必担心使用正确的gradle插件;已经完成了。您仍然需要设置希望使

据我所知,在android studio的新子项目中,该集成测试在设备或模拟器上运行,检查应用程序的功能是否取决于android SDK。但我确实有一些方法不依赖于android。他们的测试,我想花在JVM上,避免运行模拟器。

从Android Studio的1.1.0版RC1和gradle插件开始,您可以在JVM上运行JUnit 4单元测试,而无需设备

看看这个


如果你有最新版本的Android Studio(1.1及以上),你不必担心使用正确的gradle插件;已经完成了。您仍然需要设置希望使用
Settings>Gradle>experimental中的实验性单元测试功能。

我实际上正在尝试使用MVP和单元测试来更改我的项目,而不是使用浓缩咖啡来测试项目

我有一个项目,有160个浓缩咖啡测试和一些闲置资源,运行大约需要20-30分钟,在aws farm或test droid上运行测试会很昂贵(5美元/运行/设备),所以MVP和单元测试可能有希望

请看这里:

  • 您可以定义一个
    app/src/test/java/
    文件夹,将所有JUnit4测试放在那里,它们将在没有模拟器的情况下运行

  • 添加依赖项:
    testCompile'junit:junit:4.12'

  • 运行测试:D


  • 要补充的是,重要的是将junit测试文件放在app/src/test/java/[apk_package]/文件夹中,而不是放在app/src/androidTest/java/[apk_package]/文件夹中!将其放入androidTest文件夹将强制运行android emulator或device runner。

    谢谢。如何从命令行(gradle)运行这些测试?您可以执行
    /gradlew测试