报告测试元数据
在 TeamCity 中进行的测试运行可与一些附加信息(元数据)关联,用来补充测试状态,执行时间和输出。 这些信息可用来提供额外的日志、屏幕截图、数值、标签等等。
您可以使用 服务消息 在 TeamCity 中报告此类附加测试数据,然后在 TeamCity UI 中查看。
附加测试数据是通过 testMetadata
服务消息进行报告的,具有以下属性:
名称
(可选)是元数据项的名称,用于区分同一测试的不同元数据项,并在用户界面中显示此项。 当省略时,TeamCity 会自动生成名称,但不会在 UI 中显示。testName
(可选)是为其生成元数据的测试的名称。 如果在测试中间或刚完成时报告了服务消息,可以跳过testName
属性。 如果元数据报告时间较晚,它应包含完整的测试名称,包括以下格式中的套件和包:<suiteName>:<packageName>.<testName>
(阅读更多关于 解读测试名称 的信息)。值
(必须)包含与测试相关联的元数据值。 最大值长度为 1024。类型
(可选)除非另有说明,否则默认为文本。 类型影响了元数据的存储方式以及其在 TeamCity UI 中的显示值。
如果服务消息的格式不正确,将会在构建日志中记录相应的注释。
可以被 TeamCity 识别的数据类型如下:
TeamCity 为给定的测试绘制一个带有数值的图表。 每次后续的构建运行都会在图表上增加一个新的点。 Y 轴根据 "type" 参数值进行格式化: number
、 毫秒
(对于毫秒)、 bytes
或 百分比
。
##teamcity[testMetadata testName='package.Test.testName' name='setUp time' type='ms' value='434.5']
##teamcity[testMetadata testName='package.Test2.testName' name='Success rate' type='percent' value='91.2']
##teamcity[testMetadata testName='package.Test3.testName' name='Total amount' type='number' value='54']
##teamcity[testMetadata testName='package.Test4.testName' name='Package size' type='bytes' value='1048576']
##teamcity[testMetadata testName='package.Test.testName' name='some key' value='a text']
##teamcity[testMetadata testName='test.name' name='JetBrains' type='link' value='https://jetbrains.com']
##teamcity[testMetadata testName='test.name' type='artifact' value='path/to/catalina.out']
构件的路径应相对于构建构件目录,并且可以引用存档中的文件:
##teamcity[testMetadata testName='test.name' type='artifact' value='logs.zip!/testTyping/full-log.txt']
当展示到构件的链接时,TeamCity 会同时显示 名称
属性和所引用构件的文件名。 如果名称是自动生成的,则不会显示。
##teamcity[testMetadata testName='test.name' type='image' value='path/to/screenshot.png']
镜像的路径应相对于构建工件目录。 当展示图片时,TeamCity 同时显示了 名称
属性和所引用图片的文件名。
##teamcity[testMetadata testName='test.name' type='video' value='path/to/screen-capture.mp4']
视频片段的路径应相对于构建工件目录。 在显示视频片段时,TeamCity 会同时显示 名称
属性和所引用视频的文件名。
您可以在 TeamCity 网页界面的各个位置查看额外的测试数据。
要查看测试的附加数据,请展开堆栈跟踪:TeamCity 在单独的测试元数据部分中显示了它,位于测试失败详情之前。

要查看测试数据图,展开 stacktrace:TeamCity 在单独的测试元数据部分中会在测试失败详情前显示它。

要查看成功测试的额外数据,请转到测试选项卡或测试历史选项卡:如果存在额外的测试数据,现在可以点击测试的 OK 状态:

感谢您的反馈!