如何向 Android Studio 项目添加新的源目录?

How to add a new source directory to an Android Studio project?

所以最终我试图将我的集成测试与 Android Studio 项目中的单元测试分开。我找到了一些关于该主题的资源:

所有这些似乎都表明要走的路是为集成测试创建一个新的源集,然后创建一个新的测试任务,在该源集中构建和运行测试。我无法通过创建 Android Studio 识别的源集的第一步。

这是我在 app/build.gradle 中的内容,它构建时没有错误,但不会生成 integrationTest 源根目录 我可以将 类 添加到:

android{
    ...
    sourceSets{
        integrationTest {
           java.srcDir('src/integrationTest/java')
        }
    }
}

我的问题是:

  1. 我必须准确地在哪里添加 sourceSets 块?在build.gradle?在app/build.gradle?在 app/build.gradle android 块内?

  2. 一旦我使用正确的语法将我的源集添加到正确的位置,这是否足以让 Android Studio 检测并在 UI 中显示它除了主要和测试源,还是有额外的步骤?

编辑:

我已尝试按照 marius 的回答中的说明进行操作,但 integrationTest 未出现在我的构建变体中。这是我看到的:

够了:

android{
    ...
    productFlavors{
        integrationTest {
        }
    }
}

关于你的第一个问题productFlavors块应该在你的app/build.gradle中,在android块内。

关于您的 第二个问题:将此添加到 build.gradle 文件后,您还需要创建文件夹 /src/integrationTest/src/integrationTest/java 。完成后,同步您的 gradle 文件并从 Build Variant window 中选择新的构建变体,以便 IDE 将其检测为活动源文件夹。