【问题标题】:Create separate test module/project in Android Studio在 Android Studio 中创建单独的测试模块/项目
【发布时间】:2014-11-26 16:24:08
【问题描述】:

我使用的是 Android Studio 0.8.14 版。目前,新建Android项目后,默认测试源代码文件夹androidTest位于app模块的src文件夹内,与main同级(包含应用程序源代码)。 但是,如果出于任何特定原因,我想将测试代码移动到我的项目中的单独模块中,或者更进一步,移动到我用于应用程序源代码的项目之外的单独项目中,我可以这样做吗?

为了让您更容易理解我在问什么,“图片”会更好。 Android Studio 创建的当前默认新项目结构如下所示:

My Project
    |___my app module
        |___src
            |___androidTest
            |___main

现在我想要这样的东西:

My Project
    |___my app module
    |    |___src
    |        |___main
    |___my test module

或者这个:

My App Project
|    |___my app module
|
My Test Project (some how linked to My App Project)

我怎样才能得到这个?任何帮助将不胜感激。

【问题讨论】:

    标签: android android-studio android-gradle-plugin android-testing


    【解决方案1】:

    如果我理解您的要求,您可能缺少的信息是添加如下内容:

    include ':my app module', ':my test module'
    

    到您的 settings.gradle 文件。我使用这种技术将我的“连接”测试与纯单元测试分开。你可能有兴趣查看我使用流行的deckard-gradle 项目制作的一个fork,它正是这样做的:https://github.com/jdonmoyer/deckard-gradle

    【讨论】:

      【解决方案2】:

      指定“androidTest”以外的测试目录的技巧是在“build.gradle”文件中添加“sourceSets”配置选项,如下所示:

       sourceSets {
              androidTest {
                  setRoot('src/test')
              }
       }
      

      以上示例只会将测试目录的名称从“androidTest”更改为“test”。

      但您可以使用相对或完整路径名尝试相同的技术,例如

      setRoot('../my test module/my app module/src/androidTest')
      

      setRoot('../../My Test Project/src/androidTest')
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-05-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-11-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多