视频路径问题

时间:2019-09-05 13:19:07

标签: testing configuration automated-tests e2e-testing testcafe

TestCafe无法识别$ {TEST}作为视频路径。

我正在尝试为失败的测试实施测试记录,以了解如何重现出现的问题,但是即使类似的路径模式适用于屏幕截图,视频路径也无法识别。

According to the documentation,这应该可以工作,但是会显示以下警告:

Warnings (1):

The "${TEST}" path pattern placeholder cannot be applied to the recorded video.

The placeholder was replaced with an empty string.

我创建了TestRunner.js,如https://devexpress.github.io/testcafe/documentation/using-testcafe/programming-interface/runner.html所示。然后我添加了

if(runnerOptions.takeVideo === true && runInParallel === 1) {
    runner.video(reports.videoPath, {
        singleFile: true,
        failedOnly: true,
        pathPattern: store + '-' + env + '/${TEST}/${DATE}_${TIME}/${USERAGENT}'
    })
}

return runner
    .src(tests)
    .browsers(config.browsers)
    .screenshots(reports.screenshotPath, runnerOptions.takeScreenshots,
         store + '-' + env + '/${TEST}/${DATE}_${TIME}/${RUN_ID}/${USERAGENT}/step-${FILE_INDEX}')
    .concurrency(runInParallel)
    .run(runnerOptions.run);

正如我所说,屏幕截图可以正常工作,但视频不能正常工作。

2 个答案:

答案 0 :(得分:2)

According to this GitHub issue,指定singleFile: true是原因。将所有失败的测试保存到一个记录中时,路径模式不能使用单个测试或灯具标识符来命名文件。

以下模式占位符解析为带有单个文件的空字符串:

  • $ {TEST_ID}
  • $ {TEST_INDEX}
  • $ {FIXTURE}
  • $ {TEST}
  • $ {TEST_ID}

documentation for the path patterns确实提到了单个文件的限制,但仅引用$ {TEST_ID}而不是其他占位符。

答案 1 :(得分:1)

我已经检查了该方案,该方案在Windows 10下没有任何“路径模式”问题:

testcafe chrome test.js --video artifacts/videos --video-options pathPattern=${TEST}.mp4

请您说明一下如何指定pathPattern video option吗?另外,请提供您的环境详细信息。