在剧作家junit报告中添加Owner属性

mdfafbf1  于 2022-11-11  发布在  其他
关注(0)|答案(1)|浏览(131)

我有一个Playwright测试套件,并将其配置为以junit格式生成测试报告。我在ADO中发布结果,并希望导出管道测试报告

中的Owner字段
根据this azure devops文档,我必须提供一个所有者属性。
我希望在我的junit xml输出文件中有一个像这样的粗体文本的Owner属性。例如,〈testcase name=“Navigation demo”classname=“modules\my.spec.ts:14:5 ›演示描述›演示测试”time=“20.413”Owner ='采购管理'
我看了剧作家junit reporter的源代码。它似乎是硬编码的3个属性。所以,我不知道如何在那里添加所有者属性。
有人能帮忙吗?

oxiaedzo

oxiaedzo1#

我也一直在试图弄清楚这一点。使用Xray扩展报告程序只会添加一个属性标签,而Azure Devops无法使用该标签。
编辑:
我尝试使用一个自定义的playwriter报告器,并使其工作。按照以下步骤创建一个自定义报告器,并将其内置的JUnit报告器复制到您的报告器。将类名更改为任意名称,然后使用这些导入:

import fs from 'fs';
 import path from 'path';
 import type { FullConfig, FullResult, Reporter, Suite, TestCase } from '@playwright/test/reporter';
 import { monotonicTime } from 'playwright-core/lib/utils';
 import { formatFailure, formatTestTitle, stripAnsiEscapes } from '../../node_modules/@playwright/test/lib/reporters/base';

然后,您可以在此编辑和添加任意属性:

attributes: {    
         // Skip root, project, file
         name: test.titlePath().slice(3).join(' '),
         classname: formatTestTitle(this.config, test),
         time: (test.results.reduce((acc, value) => acc + value.duration, 0)) / 1000,
         owner: 'TEST_STRING'
       },

相关问题