【问题标题】:how to access to test class from another module to use in junit test?如何从另一个模块访问测试类以在 junit 测试中使用?
【发布时间】:2021-12-27 14:01:54
【问题描述】:

我将当前的单片模块拆分为几个模块::app:ui:base

我使用:base 模块中的类在:ui 模块中编写了测试。

class FooTest : BaseTest {

@Test
fun fooTest() {}
}

所以BaseTest:base 模块中,但是:ui 模块依赖于:base。所以 AS 向我表明没关系。

在 :ui 模块的 gradle 文件中:

dependences {

   implementation project(":base")
}

但是当测试运行时我得到:

BaseTest: Unresolved reference: BaseTest

我尝试添加:

   testImplementation project(":base")

   androidTestImplementation project(":base")

但没有解决问题。 :(

【问题讨论】:

    标签: android junit4


    【解决方案1】:

    如果 BaseTest 文件位于 :base 的 main 目录而不是 test 目录中,则此方法有效

    例如,您可以拥有一个名为 commontest 的模块,其中包含在模块的主目录中包含这些的常用工具/类,然后要在其他模块中使用它,您可以将其与 testImplementation project(':commontest') 一起包含

    【讨论】:

    • 谢谢。现在我知道为什么我的尝试不起作用了。你知道如何强制编译器“看到”测试子文件夹中的类吗?
    • 可能有办法,但我找不到。
    猜你喜欢
    • 2011-01-30
    • 1970-01-01
    • 1970-01-01
    • 2020-09-19
    • 2020-02-10
    • 1970-01-01
    • 1970-01-01
    • 2019-06-23
    • 1970-01-01
    相关资源
    最近更新 更多