我正在尝试生成 XML Junit 结果以包含在 Gitlab 管道结果中。
到目前为止,一切都进展顺利:我生成了每个 XML 文件,并且它们按照我想要的方式在管道中显示。
但是,一旦我尝试嵌入场景中拍摄的屏幕截图,我就无法使其工作。
我从这里开始:https://www.npmjs.com/package/mocha-junit-reporter#attachments
所以,我像这样生成了 cypress.json :
"mochaJunitReporterReporterOptions": {
"mochaFile": "cypress/reports/junit/results-[hash].xml",
"attachments": true
}
因为这似乎不是自动的,所以我添加了一个
beforeEach
钩子,其中:
this.test.attachments = ['cypress/screenshots/scenario/scenario.feature/test-scr.png'];
如果我尝试在测试中设置此行,而不是在引擎盖中,则会出现错误:
无法读取未定义的属性(读取“测试”)”
在此文件夹中,该文件存在,但我不确定我是否从良好的文件夹级别开始包含它(无论如何,我尝试了几种可能性,但从未使其工作)。
我永远不会有这个新标签:
<system-out>[[ATTACHMENT|path/to/file]]</system-out>
我感觉黄瓜预处理器有一种不同的工作方式,因为我们不再在 describe 和 it 之间编写内容,但我没有证据证明这一点。
我错过了什么?
在您的规范文件中,如果您想使用
this
,请不要使用箭头函数。
箭头函数与常规函数声明不同,不会重新定义
this
。
更换这个
it('should pass'), () => {
// your code
}
有了这个
it('should pass'), function () {
// your code
}
您好,我只是为此目的创建了这个库。 能够附加屏幕截图并将其导入 xray