gradle测试任务相互冲突

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gradle测试任务相互冲突相关的知识,希望对你有一定的参考价值。

我有一个gradle project有2个测试任务,测试和测试2。

当运行gradle test test2 2次testtest2再次跑,即使他们应该是UP-TO-DATE(当运行gradle test时,无论我跑了多少次,它都会保持UP-TO-DATE)。

为什么会这样?

答案

尝试在另一台计算机上重新创建此错误后,我发现了这一点。

这个错误发生在gradle 2上,在gradle 3上没关系。

这必须与this link有关

我认为发生了什么

似乎在gralde 2上测试结果导出到$buildDir/test-results然后UP-TO-DATE函数将无法工作,因为第二个测试任务更改了输出目录,这给出了这个目录结构:

build
    test-results
        binary
            test/...
            test2/...
        TEST-MyTest1.xml
        TEST-MyTest2.xml

gradle 3上,结果导出到$buildDir/test-results/$taskName,它给出了这个目录结构:

build
    test-results
        test
            binary/...
            TEST-MyTest1.xml
        test2
            binary/...
            TEST-MyTest2.xml

附:如果我错了,请告诉我

以上是关于gradle测试任务相互冲突的主要内容,如果未能解决你的问题,请参考以下文章

Gradle dependencies 解决项目依赖冲突

使用 gradle 7.0.0 与 Android 中的华为 HMS 插件冲突

使用 gradle 运行并行测试任务

如何通过 Gradle 测试任务在我的 JUnit 上启用调试

gradle项目与maven项目相互转化(转)

Gradle 在从网络下载工件时抛出错误.. 异常:Gradle 任务 assembleDebug 失败,退出代码为 1