包含此页的版本:
不含此页的版本:
您可以在活动测试运行或单个测试开始和完成时接收回调。您可以通过调用RegisterCallbacks在TestRunnerApi与实现ICallbacks.有四个ICallbacks整个运行和测试树的每个级别的开始和结束方法。
以下示例展示了如何设置侦听器:
注意:监听器会从所有测试运行中接收回调,无论注册的TestRunnerApi例如。
public void SetupListeners()
{
var api = ScriptableObject.CreateInstance<TestRunnerApi>();
api.RegisterCallbacks(new MyCallbacks());
}
private class MyCallbacks : ICallbacks
{
public void RunStarted(ITestAdaptor testsToRun)
{
}
public void RunFinished(ITestResultAdaptor result)
{
}
public void TestStarted(ITestAdaptor test)
{
}
public void TestFinished(ITestResultAdaptor result)
{
if (!result.HasChildren && result.ResultState != "Passed")
{
Debug.Log(string.Format("Test {0} {1}", result.Test.Name, result.ResultState));
}
}
}
注意:注册的回调不会在域重新加载时保留。因此,有必要在域重新加载后重新注册回调,通常使用 InitializeOnLoad。
可以提供一个priority作为整数作为注册回调时的第二个参数。这会影响不同回调的调用顺序。默认值为零。也可以提供RegisterCallbacks使用实现IErrorCallbacks这是ICallbacks.IErrorCallbacks还有一个回调方法OnError如果运行无法启动(例如,由于编译错误或 IPrebuildSetup 引发异常),则调用。