AbstractTestTask

已知子类型
Test
XCTest

所有测试任务的抽象基类。

  • 对测试监听器的支持
  • 对报告的支持
  • 对控制台输出中报告链接的支持

注意: 此抽象类不应由构建脚本或插件作者实现。

属性

属性描述
binaryResultsDirectory

内部二进制格式的测试结果根目录属性。

ignoreFailures

指定当此任务执行的验证失败时构建是否应中断。

reports

此任务可能生成的报告。

方法

方法描述
addTestListener(listener)

向此任务注册一个测试监听器。也可以考虑使用以下便捷方法更快地挂接到测试执行:AbstractTestTask.beforeTest(groovy.lang.Closure)AbstractTestTask.afterTest(groovy.lang.Closure)AbstractTestTask.beforeSuite(groovy.lang.Closure)AbstractTestTask.afterSuite(groovy.lang.Closure)

addTestOutputListener(listener)

向此任务注册一个输出监听器。挂接到输出事件的更快方法是使用 AbstractTestTask.onOutput(groovy.lang.Closure) 方法。

afterSuite(closure)

添加一个闭包,以便在测试套件执行后收到通知。会将一个 TestDescriptorTestResult 实例作为参数传递给该闭包。

afterTest(closure)

添加一个闭包,以便在测试执行后收到通知。会将一个 TestDescriptorTestResult 实例作为参数传递给该闭包。

beforeSuite(closure)

添加一个闭包,以便在测试套件执行前收到通知。会将一个 TestDescriptor 实例作为参数传递给该闭包。

beforeTest(closure)

添加一个闭包,以便在测试执行前收到通知。会将一个 TestDescriptor 实例作为参数传递给该闭包。

onOutput(closure)

添加一个闭包,以便在收到测试输出时收到通知。会将一个 TestDescriptorTestOutputEvent 实例作为参数传递给该闭包。

removeTestListener(listener)

取消注册与此任务关联的测试监听器。此方法仅移除通过调用此任务上的 AbstractTestTask.addTestListener(org.gradle.api.tasks.testing.TestListener) 添加的监听器。如果监听器是使用 Gradle.addListener(java.lang.Object) 向 Gradle 注册的,则此方法不会执行任何操作。请改为使用 Gradle.removeListener(java.lang.Object)

removeTestOutputListener(listener)

取消注册与此任务关联的测试输出监听器。此方法仅移除通过调用此任务上的 AbstractTestTask.addTestOutputListener(org.gradle.api.tasks.testing.TestOutputListener) 添加的监听器。如果监听器是使用 Gradle.addListener(java.lang.Object) 向 Gradle 注册的,则此方法不会执行任何操作。请改为使用 Gradle.removeListener(java.lang.Object)

reports(configureAction)

配置此任务可能生成的报告。

setTestNameIncludePatterns(testNamePattern)

设置要包含在执行中的测试名称模式。支持类名或方法名,支持通配符 '*'。更多信息请参阅用户指南中关于测试的章节。有关支持的模式的更多信息,请参阅 TestFilter

脚本块

描述
reports

配置此任务可能生成的报告。

属性详情

DirectoryProperty binaryResultsDirectory

内部二进制格式的测试结果根目录属性。

默认值
project.testResultsDir/binary/task.name

boolean ignoreFailures

指定当此任务执行的验证失败时构建是否应中断。

TestTaskReports reports (只读)

此任务可能生成的报告。

方法详情

void addTestListener(TestListener listener)

向此任务注册一个测试监听器。也可以考虑使用以下便捷方法更快地挂接到测试执行:AbstractTestTask.beforeTest(groovy.lang.Closure)AbstractTestTask.afterTest(groovy.lang.Closure)AbstractTestTask.beforeSuite(groovy.lang.Closure)AbstractTestTask.afterSuite(groovy.lang.Closure)

此监听器将不会收到由其他任务执行的测试的通知。要获得该行为,请使用 Gradle.addListener(java.lang.Object)

void addTestOutputListener(TestOutputListener listener)

向此任务注册一个输出监听器。挂接到输出事件的更快方法是使用 AbstractTestTask.onOutput(groovy.lang.Closure) 方法。

void afterSuite(Closure closure)

添加一个闭包,以便在测试套件执行后收到通知。会将一个 TestDescriptorTestResult 实例作为参数传递给该闭包。

此方法也在所有测试套件执行后调用。提供的描述符的父套件将为 null。

void afterTest(Closure closure)

添加一个闭包,以便在测试执行后收到通知。会将一个 TestDescriptorTestResult 实例作为参数传递给该闭包。

void beforeSuite(Closure closure)

添加一个闭包,以便在测试套件执行前收到通知。会将一个 TestDescriptor 实例作为参数传递给该闭包。

此方法也在任何测试套件执行前调用。提供的描述符的父套件将为 null。

void beforeTest(Closure closure)

添加一个闭包,以便在测试执行前收到通知。会将一个 TestDescriptor 实例作为参数传递给该闭包。

void onOutput(Closure closure)

添加一个闭包,以便在收到测试输出时收到通知。会将一个 TestDescriptorTestOutputEvent 实例作为参数传递给该闭包。

apply plugin: 'java'

test {
   onOutput { descriptor, event ->
       if (event.destination == TestOutputEvent.Destination.StdErr) {
           logger.error("Test: " + descriptor + ", error: " + event.message)
       }
   }
}

void removeTestListener(TestListener listener)

取消注册与此任务关联的测试监听器。此方法仅移除通过调用此任务上的 AbstractTestTask.addTestListener(org.gradle.api.tasks.testing.TestListener) 添加的监听器。如果监听器是使用 Gradle.addListener(java.lang.Object) 向 Gradle 注册的,则此方法不会执行任何操作。请改为使用 Gradle.removeListener(java.lang.Object)

void removeTestOutputListener(TestOutputListener listener)

取消注册与此任务关联的测试输出监听器。此方法仅移除通过调用此任务上的 AbstractTestTask.addTestOutputListener(org.gradle.api.tasks.testing.TestOutputListener) 添加的监听器。如果监听器是使用 Gradle.addListener(java.lang.Object) 向 Gradle 注册的,则此方法不会执行任何操作。请改为使用 Gradle.removeListener(java.lang.Object)

TestTaskReports reports(Action<? super TestTaskReports> configureAction)

配置此任务可能生成的报告。

AbstractTestTask setTestNameIncludePatterns(List<String> testNamePattern)

设置要包含在执行中的测试名称模式。支持类名或方法名,支持通配符 '*'。更多信息请参阅用户指南中关于测试的章节。有关支持的模式的更多信息,请参阅 TestFilter

脚本块详情

reports { }

配置此任务可能生成的报告。

委托给
TestTaskReports 来自 reports