【问题标题】:Adding unit tests to existing Android Studio project向现有 Android Studio 项目添加单元测试
【发布时间】:2019-01-12 21:29:39
【问题描述】:

如何向现有 Android Studio 项目添加单元或集成测试?

我尝试在项目视图中添加文件夹以及通过上下文菜单(右键单击)创建测试。

我无法让 Android Studio 将该文件夹识别为测试文件夹。

我也试过了:

【问题讨论】:

    标签: android-studio


    【解决方案1】:

    我无法让 Android Studio 将该文件夹识别为测试文件夹。

    按照下面的文件夹结构,当您将项目视图选择为“Android”时,您应该能够看到所有标记为“test”的测试用例

    |- src
      \-- androidTest // for android instrumentation tests
      \-- main        // your source code
      \-- test        // for unit tests
    

    【讨论】:

      【解决方案2】:

      如果您的 src/ 目录下已经有目录 'test',添加标记为 'androidTest' 的测试目录才会被识别为测试目录。

      这是从 Android 3.1.3 开始的。

      【讨论】:

        【解决方案3】:

        我遇到了类似的问题,我的 Android TV 没有“androidTest”和“Test”目录,我想在项目中添加一些单元测试。

        我所做的是从头开始创建一个新的 Android 项目(常规应用程序,不适用于电视),并将新项目中的测试目录复制到我现有的项目中(维护上面 @shizhen 提到的文件夹结构)。

        最后,我重命名了包文件夹的名称,并让 ExampleUnitTest 运行并正常工作。之后,我就可以开始在我的 Android TV 项目上编写单元测试了。

        希望对您有所帮助!这可能不是最好的解决方案,但它确实有效

        【讨论】:

          【解决方案4】:

          虽然发布的答案非常简单,但您也可以试试这个自动生成插件。这将为您处理所有事情,并且还会尝试自动编写测试用例

          使用Unit Test Architect

          虽然 TDD 应该是编写测试的方法,但可能有很多未经测试的代码已经在大型项目中多次编写。

          有一天,我对为现有的旧代码库编写测试用例感到沮丧。因此,我想到了自动生成所有单元测试用例。

          我创建了一个开源 Gradle 插件,可用于上述任务。它已经托管在 ma​​venCentral 上。我用它来为我的项目生成测试用例。但它可以用于任何 gradle 项目(android、java、kotlin、kotlin+java)。它的边缘可能很粗糙,但它对我来说做得很好。

          BuildScript 依赖:

          classpath "io.github.orange-3:unit-test-architect:$PLUGIN_VERSION"
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2015-08-12
            • 2011-12-15
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2020-06-17
            • 1970-01-01
            相关资源
            最近更新 更多