在本地保存量角器诱惑 html 报告

Save protractor allure html report locally

我正在使用 Protractor 和 jasmine-allure-reporter。执行测试后,我在 'allure-results' 中获取 XML 文件,从那里我使用命令 "allure serve allure-results" 生成 HTML 报告。执行此命令时,html 报告会在 'Temp' 文件夹 (%Temp%91932647422029\allure-report) 中生成。我想在本地 generate/save 这份报告,我该怎么做。因为测试完运行我可能要分享html的报告。你能帮我解决这个问题吗? 下面是 allure-report

的 Config.js 部分
onPrepare: function() {
    var AllureReporter = require('jasmine-allure-reporter');

    jasmine.getEnv().addReporter(new AllureReporter());
    jasmine.getEnv().afterEach(function(done){      
      //allure.addEnvironment(Path, 'Chrome'),
      browser.takeScreenshot().then(function (png) {      
      allure.createAttachment('Screenshot', function () {
          return new Buffer(png, 'base64')
        },'image/png')();
        done();
      })
    });
  }

请按照此设置在您的本地目录中生成输出。 'Allure Command Line Tool' 将帮助您生成魅力报告。

通过运行这个命令安装它npm install allure-commandline --save-dev

之后,将 "posttest": "allure generate allure-results --clean -o allure-report" 部分添加到您的 package.json 中。因此,当 运行 使用 npm test 进行测试时, posttest 中提到的命令将在您的本地目录中生成报告。您可以参考下面 package.json 文件的示例 script 部分。

"scripts": {
        "pretest": "rm -rf allure-report",
        "test": "protractor conf.js",
        "posttest": "allure generate allure-results --clean -o allure-report || true"
    }

posttest 部分中,您指的是 --clean -o 部分之后的输出目录位置。

也像这样更改您的 conf.js 文件并在 resultsDir 部分添加本地目录路径以存储生成的 xml 文件。

onPrepare: function () {

    var AllureReporter = require('jasmine-allure-reporter');

    //allure report
    jasmine.getEnv().addReporter(new AllureReporter({
        resultsDir: 'allure-results'
    }));

    /* 
     * It will take screenshot after each Jasmine function 'it'
     */        
    jasmine.getEnv().afterEach(function (done) {
        browser.takeScreenshot().then(function (png) {
            allure.createAttachment('Screenshot', function () {
                return new Buffer(png, 'base64')
            }, 'image/png')();
            done();
        })
    });

}

当前设置将生成 allure-results 中的所有 xml 文件和 allure-report 文件夹中的 html 报告(两者都在根目录中)。

|-allure-results
|-allure-report
|-node_modules
|-src-|-conf.js
      |-package.json

请参考github

中的示例项目