Android Studio中的多个测试套件

时间:2016-11-09 16:24:08

标签: unit-testing android-studio gradle

我的Android项目中有一个纯Java子项目。我已经有一个位于src/test/java内的测试套件,我希望为集成测试引入第二个测试套件。

我已在build.gradle中指定了以下内容:

sourceSets {
    integration {
        java {
            compileClasspath += test.compileClasspath
            runtimeClasspath += test.runtimeClasspath
        }
    }
}

task integrationTest(type: Test, description: 'Runs the integration tests.', group: 'Verification') {
    testClassesDir = sourceSets.integration.output.classesDir
    classpath = sourceSets.integration.runtimeClasspath
}

configurations {
    integrationCompile.extendsFrom testCompile
    integrationRuntime.extendsFrom testRuntime
}

测试位于src/integration/java内。这些测试可以从命令行成功运行,在Android Studio中,java文件夹显示为绿色,就像主测试套件一样。

但是,当右键单击并选择"运行'所有测试'"时,我会收到错误No tests were foundEmpty test suite.

如何才能在Android Studio中轻松运行第二个测试套件?

2 个答案:

答案 0 :(得分:1)

您可以尝试使用SuiteClasses。例如,如果包中有多个Test类,则可以创建运行所需套件的Suite.class,即使是所有测试,只要指定它们即可。然后右键单击并在该类上运行测试。这是一个例子:

@RunWith(Suite.class)
@SuiteClasses({
        EmailValidatorTest.class,
        NewTest.class })

public class AllTests {

}

示例结构: enter image description here

答案 1 :(得分:0)

我已经为此提交了一个错误:https://issuetracker.google.com/issues/65476541