量角器测试报告

Protractor test reports

我已经建立了相当多的量角器测试套件,我希望将其实施到 jenkins 中,以便 运行 在每个新版本中进行这些测试。要处理输出,仅将其输出到文本文件已经不够了,例如protractor conf.js --suite [suiteName] > output.text

我找到了量角器报告器here and here,但我没有找到任何关于手动操作量角器输出以在不使用外部框架/库的情况下更清晰、更有吸引力地表示它的信息。

感谢任何意见!

听起来您想创建一个自定义 Jasmine 报告程序。记者API在Jasmine docs解释。

因为你只想对测试结果做一些事情,所以你只需要实现 specDone 回调。你的记者看起来像这样:

var myReporter = {
  specDone: function(results)( {
    writeToFile('Suite started: ' + result.description + ' whose full description is: ' + result.fullName);
  }
};

然后你可以在你的 conf 文件中将你的记者添加到 Jasmine:

jasmine.getEnv().addReporter(myReporter);

我认为我的项目可以部分满足您的要求,我想为您提供更多可执行解决方案。

您可以使用此项目自动生成可读性测试报告。您必须使用 NPM 安装一个额外的模块,并在您的量角器配置文件中添加几行。

http://vorachet.github.io/protractor-build-verification-testreport/

摘录:

protractor-build-verification-testreport

Build verification test (Smoke testing ,Confidence testing, Sanity testing) is done by testers before accepting a new build. Build verification test is also one of the most cost-effective method for identifying and fixing defects in software.

protractor-build-verification-testreport provides a Node.js module used to generate readability HTML test report based on Protractor environment. If Protractor is an equipment in your build verification test process, protractor-build-verification-testreport could help you doing test report tasks effectively.

可通过电子邮件发送的报告

import:  var Jasmine2HtmlReporter = require('protractor-jasmine2-html-reporter');
jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
            savePath: './emailable-report/',
            consolidateAll: false,
            screenshotsFolder: 'reportsscreenshots',
            takeScreenshots: true,
            takeScreenshotsOnlyOnFailures: true
        }));

总结报告

import:  var HtmlReporter = require('protractor-beautiful-reporter');
jasmine.getEnv().addReporter(new HtmlReporter({
            baseDirectory: './summary-report',
            screenshotsSubfolder: 'images',
            jsonsSubfolder: 'jsons',
            takeScreenShotsOnlyForFailedSpecs: true,
            docTitle: 'NAVA 2.1 Tablet Site Automation Execution Summary ..'
        }).getJasmine2Reporter());
  • protractor-jasmine2-html-reporter
  • 量角器美女记者项目

通过 NPM 安装 protractor-jasmine2-html-reporter

npm install protractor-jasmine2-html-reporter --save-dev

在 Protractor 配置文件中,在 jasmine 中注册 protractor-jasmine2-html-reporter:

var Jasmine2HtmlReporter = require('protractor-jasmine2-html-reporter');

// Setup the report before any tests start

beforeLaunch: function() {
    return new Promise(function(resolve) {
        reporter.beforeLaunch(resolve);
    })
},


onPrepare: function() {
    browser.driver.manage().window().maximize();
    jasmine.getEnv().addReporter(
        new Jasmine2HtmlReporter({
            savePath: 'target/screenshots', // put your destination file
        })
    );



    jasmine.getEnv().addReporter(new SpecReporter({
        displayFailuresSummary: true,
        displayFailedSpec: true,
        displaySuiteNumber: true,
        displaySpecDuration: true
    }));

    jasmine.getEnv().addReporter(reporter);
},

// Close the report after all tests finish

afterLaunch: function(exitCode) {
    return new Promise(function(resolve) {
        reporter.afterLaunch(resolve.bind(this, exitCode));
    });
},