如何在测试失败时自动通知测试所有者?

How to automatically notify tests' owners on failing tests?

我们正在使用 Azure DevOps 运行 进行夜间构建以检查我们的测试结果。我们的测试装饰有测试所有者名称的所有者属性 (MSTest)。

作为夜间 运行 的一部分,自动向失败测试的所有者发送电子邮件的最简单方法是什么?

是否可以通过使用 Azure DevOps 的一些内置功能来实现此功能?如果不是,可以将哪个自定义流程集成到每晚构建中以实现此目的?

Azure DevOps 中目前没有此类内置功能。

请在这里查看类似的问题:


作为解决方法,我们可以使用 powershell 脚本通过 REST API 获取测试结果,然后发送电子邮件:

使用 RESI 获取测试结果 API Releases - Get Task Log:

GET https://vsrm.dev.azure.com/{organization}/{project}/_apis/release/releases/{releaseId}/environments/{environmentId}/deployPhases/{releaseDeployPhaseId}/tasks/{taskId}/logs?api-version=5.0-preview.2

然后使用 powershell 脚本读取测试结果文件 (.trx) 的详细信息并创建格式化的电子邮件消息以发送给定义的收件人:

您可以查看此线程 Send Test Result Email After Running Automated Tests with Release Management 了解一些详细信息。

还有一个 Email Report Extension 可以在管道中处理与电子邮件相关的事情。