通常是Nightwatch和Javascript的新手,并且可以成功使用nightwatch-html-reporter,但每个测试都会覆盖以前生成的html报告。我尝试在globals.js文件中的reportFilename中添加时间戳,并在执行测试后收到错误消息,类似于:

错误生成报告:错误:ENOENT:没有这样的文件或目录,打开'C:\ Automation \ nightwatch \ reports \ generatedTestResults_2016-04-15_23:14:30.736_.html'

这是我的整个globals.js文件:

var d = (new Date).toISOString().replace(/z|t/gi,'_').trim();
var HtmlReporter = require('nightwatch-html-reporter');
var reporter = new HtmlReporter({
  openBrowser: false,
  reportsDirectory: "/reports",
  reportFilename: "generatedTestResults_"+d+".html",
  themeName: "default"
});

module.exports = {
  reporter: reporter.fn
}


目的是为每个测试保存不同的生成报告。

最佳答案

我认为您看到的错误是因为生成的文件名包含':'字符。如果您使用类似

var d = Date.now();


然后文件名就可以了。您还可以更新到最新版本的nightwatch-html-reporter(1.0.5),它包括一个在文件名末尾附加时间戳的选项。

然后,您的记者选项将如下所示:

var reporter = new HtmlReporter({
  openBrowser: false,
  reportsDirectory: "/reports",
  uniqueFilename: true,
  reportFilename: "generatedTestResults.html",
  themeName: "default"
});

关于javascript - 使用nightwatch-html-reporter,是否可以将时间戳添加到reportFilename?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36658573/

10-11 06:01