自定义量角器测试报告/输出

时间:2016-05-02 14:46:25

标签: protractor

您好我正在尝试通过在命令提示符中提供以下命令将量角器测试结果放入文件中。 量角器conf.js>位置\的Result.txt 在那里我可以看到量角器测试的完整输出。

在以自定义方式运行量角器测试后,我是否可以获得txt文件中执行的Spec数量和失败次数?

我需要以这种自定义方式提交报告,因为如果所有的量角器测试都通过,我需要运行shell脚本。

3 个答案:

答案 0 :(得分:7)

我们有两种方法可以满足您的要求。但它会以.json格式给出最终结果。如果你真的只需要.txt格式,你可以将.json转换为.text

如何做:

  1. 在conf.js文件中声明参数' resultJsonOutputFile: ',如下所示 -

    resultJsonOutputFile:'。/ testResults.json', //输出以.json格式存储最终结果的文件路径

    1. 在运行量角器时从命令行传递输出文件路径:

      <强>命令:

        protractor --resultJsonOutputFile='../outputFilePath.json' protractor.conf.js
      
    2. 如果您需要任何建议/帮助,请点击这里,我很乐意为您提供帮助。

答案 1 :(得分:4)

Jasmine是执行规范报告的框架,而不是Protractor。你可以使用他们已经拥有的一种流行的:

(1)https://www.npmjs.com/package/jasmine-spec-reporter

(2)https://github.com/larrymyers/jasmine-reporters(查看JUnit XML部分)

或者你可以制作自己的(这听起来像你想要的):http://jasmine.github.io/2.1/custom_reporter.html

答案 2 :(得分:1)

更改您的conf.js文件。

var HtmlReporter = require('protractor-html-screenshot-reporter');
var reporter = new HtmlReporter({
    baseDirectory: './protractor-result', // a location to store screen shots.
    docTitle: 'Protractor Demo Reporter',
    docName: 'protractor-demo-tests-report.html'
});

exports.config = {
  framework: 'jasmine',
  seleniumAddress: 'http://localhost:4444/wd/hub',
  specs: ['invoice.js'],
  capabilities: {
    browserName: 'chrome',
  },
  jasmineNodeOpts: {
    showColors: true, // Use colors in the command line report.
  },
  onPrepare: function() {
      jasmine.getEnv().addReporter(reporter);
  }
}

然后使用以下指挥官执行它。

npm install protractor-html-screenshot-reporter

如果您不清楚,请随时提出任何问题。 :)