public async Task InitializeAsync() { var currentProjectDir = Enumerable .Range(0, 3) .Aggregate(new DirectoryInfo(CurrentDirectory), (acc, _) => acc.Parent !); var integrationProjectDir = Path.Combine(currentProjectDir.FullName, "IntegrationSample"); var testProcess = Process.Start(new ProcessStartInfo { FileName = "dotnet", Arguments = $"test {integrationProjectDir} --logger \"trx;LogFileName={TestReportFileName}\"", RedirectStandardOutput = true, RedirectStandardError = true, }); var standardOutput = await testProcess !.StandardOutput.ReadToEndAsync(); var standardError = await testProcess !.StandardError.ReadToEndAsync(); var testReport = File.ReadAllText(TestReportFileName); var testResults = from descendent in XElement.Parse(testReport).Descendants() where descendent.Name.LocalName == "UnitTestResult" select ElementToTestResult(descendent); TestResults = testResults.ToImmutableList(); }