XCTest

API 文档XCTest

执行 XCTest 测试。测试始终在一次执行中运行。

属性

属性描述
binaryResultsDirectory

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

ignoreFailures

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

reports

此任务可能生成的报告。

runScriptFile

返回测试套件 bundle 或可执行文件位置

testInstallDirectory

测试套件 bundle 或可执行文件位置

workingDirectory

此测试的工作目录属性。

方法

方法描述
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)

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

afterTest(closure)

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

beforeSuite(closure)

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

beforeTest(closure)

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

onOutput(closure)

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

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

脚本块

无脚本块

属性详情

DirectoryProperty binaryResultsDirectory

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

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

boolean ignoreFailures

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

TestTaskReports reports (只读)

此任务可能生成的报告。

RegularFileProperty runScriptFile

返回测试套件 bundle 或可执行文件位置

DirectoryProperty testInstallDirectory

测试套件 bundle 或可执行文件位置

DirectoryProperty workingDirectory

此测试的工作目录属性。

方法详情

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)

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

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

void afterTest(Closure closure)

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

void beforeSuite(Closure closure)

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

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

void beforeTest(Closure closure)

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

void onOutput(Closure closure)

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

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)

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

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

void removeTestOutputListener(TestOutputListener listener)

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

AbstractTestTask setTestNameIncludePatterns(List<String> testNamePattern)

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