0

我有数百个测试并使用 vstest 运行。完成所有测试的测试运行后,仅获取 .trx 文件。我希望显示每个测试的测试运行进度。我不想等待所有测试完成。一旦测试完成,我想显示进度

当我使用 vstest.console.exe 运行多个测试时,它会在所有测试运行结束时生成 .trx 文件。因此,一旦测试完成,我将无法获得即时信息。

我希望在写入 .trx 文件之前,可以根据测试运行 id 将与测试运行相关的结果存储在某个存储库中,最后检索详细信息,然后在测试运行完成后将其写入 .trx 文件. 如果我错了,请纠正我。

如果这是真的,那么如何在生成 .trx 文件之前从存储库中查询它以获取结果?

我的期望是显示每个测试的测试进度,如下所示:

No.OfTestsPassed/TotalNo.OfTests 和

No.OfTestsFailed/TotalNo.OfTests

4

1 回答 1

0

我认为您最好的解决方案是编写自己的记录器。如果您查看trx 记录器源代码,您会看到,它会在引发 TestRunComplete 事件后写入结果。您可以覆盖它的默认行为,并在每次触发 TestResult 事件时写入结果文件。

您可以在 TeamCityLogger 中看到一些示例:如何使用自定义记录器进行 vs 测试?

于 2019-07-24T13:16:35.790 回答