cucumber html模板,Cucumber HTML report with Protractor

Try below code which is working for me:

You can use below plugin :

In package.json add below dependency as below:

"cucumber-html-reporter": "^5.0.0"

hit command as below:

npm install

Add below import in your cucumberconfig.ts

import * as reporter from "cucumber-html-reporter"

Now add below key in cucumberconfig.ts

onComplete: () => {

//var reporter = require('cucumber-html-reporter');

var options = {

theme: 'bootstrap',

jsonFile: './cucumberreport.json',

output: './cucumberreportsss.html',

reportSuiteAsScenarios: true,

launchReport: true,

metadata: {

"App Version":"0.3.2",

"Test Environment": "STAGING",

"Browser": "Chrome 54.0.2840.98",

"Platform": "Windows 10",

"Parallel": "Scenarios",

"Executed": "Remote"

}

};

reporter.generate(options);

},

Complete file is look like below:

import {Config} from 'protractor'

import * as reporter from "cucumber-html-reporter"

export let config: Config = {

directConnect:true,

// set to "custom" instead of cucumber.

framework: 'custom',

// path relative to the current config file

frameworkPath: require.resolve('protractor-cucumber-framework'),

seleniumAddress: 'http://localhost:4444/wd/hub',

// To run script without cucumber use below

//specs: ['typescriptscript.js'],

onComplete: () => {

//var reporter = require('cucumber-html-reporter');

var options = {

theme: 'bootstrap',

jsonFile: './cucumberreport.json',

output: './cucumberreportsss.html',

reportSuiteAsScenarios: true,

launchReport: true,

metadata: {

"App Version":"0.3.2",

"Test Environment": "STAGING",

"Browser": "Chrome 54.0.2840.98",

"Platform": "Windows 10",

"Parallel": "Scenarios",

"Executed": "Remote"

}

};

reporter.generate(options);

},

capabilities: {

'browserName': 'firefox',

'marionette': true,

//shardTestFiles: true,

},

SELENIUM_PROMISE_MANAGER: false,

specs: [

'../Features/*.feature' // accepts a glob

],

// Run feature file for cucumber use below

cucumberOpts: {

// require step definitions

require: [

'./stepDefination/*.js' // accepts a glob

],

format: 'json:cucumberreport.json',

},

jasmineNodeOpts: {

showColors: true,

},

};

To append failed screenshot use below code in hook

After(function(scenarioResult) {

let self = this;

if (scenarioResult.result.status === Status.FAILED) {

return browser.takeScreenshot()

.then(function (screenshot) {

const decodedImage = new Buffer(screenshot.replace(/^data:image\/png;base64,/, ''), 'base64');

self.attach(decodedImage, 'image/png');

});

}

});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值