AbstractTestTask

已知子类型
Test
XCTest

所有测试任务的抽象类。

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

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

属性

属性描述
binaryResultsDirectory

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

failOnNoDiscoveredTests

如果存在测试源,但在测试执行期间未发现任何测试,任务是否应该失败。默认为 true。

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

Property<Boolean> failOnNoDiscoveredTests

如果存在测试源,但在测试执行期间未发现任何测试,任务是否应该失败。默认为 true。

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实例作为参数传递给闭包。

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

void afterTest(Closure closure)

添加一个闭包,在测试执行后通知。一个TestDescriptorTestResult实例作为参数传递给闭包。

void beforeSuite(Closure closure)

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

此方法也在任何测试套件执行前调用。提供的描述符将具有一个空父套件。

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 { }

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

委托给
来自reportsTestTaskReports