更改 Gradle 中的截断设置

Change truncation settings in Gradle

当 运行 Spock 在 Gradle (5.6.3) 中进行测试时,我看到输出可能如下所示:

> :functionalTest > Executing test com.examp...baar.baaaaz.MyCustomGradleTasksP

如果显示完整的测试路径,实际应该是这样的运行:

> :functionalTest > Executing test com.example.fooo.baar.baaaaz.MyCustomGradleTasksPluginFunctionalTest

也许它还会告诉我 class 中的哪个实际功能测试是 运行?

有没有办法告诉 Gradle 不要 进行此截断以便我可以看到 所有 信息?

这似乎是 Gradle 本身的内部实现细节:

private String createProgressLoggerDescription(TestDescriptorInternal testDescriptor) {
        DecoratingTestDescriptor decoratingTestDescriptor = (DecoratingTestDescriptor)testDescriptor;
        DefaultTestClassDescriptor defaultTestClassDescriptor = (DefaultTestClassDescriptor)decoratingTestDescriptor.getDescriptor();
        return "Executing test " + JavaClassNameFormatter.abbreviateJavaPackage(defaultTestClassDescriptor.getClassName(), MAX_TEST_NAME_LENGTH);
    }

https://github.com/gradle/gradle/blob/master/subprojects/testing-base/src/main/java/org/gradle/api/internal/tasks/testing/logging/TestWorkerProgressListener.java#L103

可以通过为 Gradle 实施您自己的记录器来覆盖此设置,如下所述:https://docs.gradle.org/current/userguide/logging.html#sec:changing_what_gradle_logs