将自动化测试结果附加到SLACK消息消息、结果、测试、SLACK

由网友(凉心有几度#)分享简介:我目前正在Azure Devop发布管道上运行我的自动化(UI&;API)测试。每当测试运行结束时,我都会收到关于我的空闲时间的通知:现在只有一种方法可以在运行后查看测试结果:您可以点击发布热链接,您将被重定向至完整的发布运行信息和测试结果。现在我的问题是:有没有可能以某种方式定制发行说明?例如,我喜欢...

我目前正在Azure Devop发布管道上运行我的自动化(UI&;API)测试。 每当测试运行结束时,我都会收到关于我的空闲时间的通知:

现在只有一种方法可以在运行后查看测试结果: 您可以点击发布热链接,您将被重定向至完整的发布运行信息和测试结果 。 现在我的问题是:有没有可能以某种方式定制发行说明? 例如,我喜欢将测试结果附加到SLACK消息中。大意是:

TestResults:
Passed: 13
Failed: 2
使用Selenium实现基于Web的自动化测试

或以某种方式附加测试运行后生成的.trx/.html文件。因此,我无需单击发布热链接即可轻松查看结果。

是否可以使用Get Runs List API方法提取测试结果?

任何形式的帮助都将不胜感激。谢谢!

推荐答案

您可以使用PowerShell脚本解析结果文件(例如:trx),获取测试详细信息,通过rest api或PostSlackNotification任务发布到空闲频道。

例如:查看日志中的trx文件:

添加新的PowerShell脚本任务以分析测试运行详细信息:

#get the path of the trx file from the output folder.
$path = Get-ChildItem -Path $(Agent.TempDirectory)TestResults -Recurse -ErrorAction SilentlyContinue -Filter *.trx |  Where-Object { $_.Extension -eq '.trx' }

$appConfigFile = $path.FullName  #path to test result trx file 

$appConfig = New-Object XML 
$appConfig.Load($appConfigFile) 
$testsummary = $appConfig.DocumentElement.ResultSummary.Counters | select total, passed, failed, aborted

echo $testsummary   # check testsummary

echo "##vso[task.setvariable variable=testSummary]$($testsummary)" #set the testsummary to environment variable

获取测试结果如下:

已发布到Slak频道:

阅读全文

相关推荐

最新文章