Android测试取决于库项目上的测试类

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android测试取决于库项目上的测试类相关的知识,希望对你有一定的参考价值。

所以我的项目有两个模块:

  • app
  • 图书馆

在应用程序的addroidTest目录中,我有一些类,这些类取决于位于库的addroidTest目录中的类。

结构为:

:library /src/main
            /androidTests

:app     /src/main
            /androidTests

它们在Android Studio中可以很好地编译,但是当我运行测试时,我得到:

错误:(6,32)错误:找不到符号类XXXX错误:执行任务失败[...]

编译失败;有关详细信息,请参见编译器错误输出。

[....]

执行任务失败>':app:compileProductionDebugAndroidTestJavaWithJavac'。

[似乎gradle执行任务':app:compileProductionDebugAndroidTestJavaWithJavac'时,找不到在库的测试目录中的类。

任何想法我该如何解决?

答案

test源集不会添加到输出的jar中,因此当applibrary中查找androidTest代码时不存在。您可以将共享的类放在主库代码中,然后从app那里引用它,但是我认为您不可能依赖于另一个模块的测试类。

另一答案

我曾与Junit合作,它位于您提到的libs文件夹中。对于您的测试课程,您可以尝试以下步骤:

1-在androidTest文件夹中,确保将测试类放置在这样的路径中:androidTest-> java-> com.examples.bla(与项目相同)->测试类。

2-进行运行/调试配置->默认值-> Android测试(如果不存在,请添加它),然后选择“模块中的所有”作为测试选项,并确保在该位置添加了Gradle-aware Make配置窗口的底部。

以上是关于Android测试取决于库项目上的测试类的主要内容,如果未能解决你的问题,请参考以下文章

typescript Angular 2测试片段。代码库https://developers.livechatinc.com/blog/category/programming/angular-2/

使用 gradle 的多项目测试依赖项

typescript Angular最终版本的Angular 2测试片段。代码库https://developers.livechatinc.com/blog/category/programming

typescript Angular最终版本的Angular 2测试片段。代码库https://developers.livechatinc.com/blog/category/programming

typescript Angular最终版本的Angular 2测试片段。代码库https://developers.livechatinc.com/blog/category/programming

Android Studio 没有正确导入 androidx 测试类