多个项目的androidTest依赖项

时间:2018-12-17 17:24:25

标签: android gradle android-gradle android-testing

我正面临以下问题。我有三个项目。我称它们为A,B和lib项目

Category

现在,我在lib项目中有一个实用程序,它显然是一个库项目。我只能将实用程序文件放在androidTest中,而不能放在main或test目录下。 (这是我无法更改的东西)

现在,我想将lib模块内部的测试实用程序访问到项目A和B中。但是gradle在运行时给了我错误。

当我尝试在项目A或B中运行android测试用例时,错误为“编译错误”。

我搜索了很多东西,发现使用旧的gradle版本有一种方法,例如

https://stackoverflow.com/a/32083131/1166926

Project Lib
-> androidTest
   -> utilityfile.kt

Project A
-> androidTest
   -> <use utilityfile.kt here>

Project B
-> androidTest
   -> <use utilityfile.kt here>

还有https://stackoverflow.com/a/5648565/1166926

但是这些现在对我不起作用,因为更新的gradle现在不支持此功能。

如何将androidTest类文件访问到另一个项目的androidTest目录中?

1 个答案:

答案 0 :(得分:0)

您应该将该测试实用程序提取到其自己的单独的库模块中,然后将其作为androidTestImplementation添加到项目A,B和Lib中。

例如:

TestUtils Lib
-> src/main/java
   -> UtilityFile.kt

Project A
-> androidTestImplementation project(":testUtils")

Project B
-> androidTestImplementation project(":testUtils")

Project Lib
-> androidTestImplementation project(":testUtils")