protected override async Task RunTestAsync() { Jenkins.MainLog.WriteLine("Running XI on '{0}' ({2}) for {1}", Device?.Name, ProjectFile, Device?.UDID); ExecutionResult = ExecutionResult & ~TestExecutingResult.InProgressMask | TestExecutingResult.Running; await BuildTask.RunAsync(); if (!BuildTask.Succeeded) { ExecutionResult = TestExecutingResult.BuildFailure; return; } using (var resource = await NotifyBlockingWaitAsync(AcquireResourceAsync())) { if (runner == null) { await SelectSimulatorAsync(); } await runner.RunAsync(); } ExecutionResult = runner.Result; KnownFailure = null; if (Jenkins.IsKnownTestIssue(runner.MainLog, out KnownFailure)) { Jenkins.MainLog.WriteLine($"Test run has a known failure: '{KnownFailure}'"); } }