node.js - protractor-jasmine2-screenshot-reporter 未在所需文件夹中生成屏幕截图

标签 node.js angular jasmine protractor screenshot

我的protractor.conf.js有以下内容。我无法找出这里出了什么问题。我已在 angular-cli 的根文件夹中手动创建了目标/屏幕截图。当我运行 Protractor conf.js 时, Protractor 在浏览器窗口中进行测试,但未生成屏幕截图。谁能帮我解决这个问题吗?

// Protractor configuration file

const { SpecReporter } = require('jasmine-spec-reporter');
var HtmlScreenshotReporter = require('protractor-jasmine2-screenshot-reporter');
var fs = require('fs');

var reporter = new HtmlScreenshotReporter({
  dest: 'target/screenshots',
  filename: 'my-report.html',
  cleanDestination: false,
  showSummary: true,
  showConfiguration: false,
  reportTitle: null,
  ignoreSkippedSpecs: false,
  captureOnlyFailedSpecs: false,
  reportOnlyFailedSpecs: false
});

exports.config = {
  allScriptsTimeout: 11000,
  specs: [
    './e2e/**/*.e2e-spec.ts'
  ],
  capabilities: {
    'browserName': 'chrome'
  },
  directConnect: false,
  baseUrl: 'http://localhost:4200/',
  framework: 'jasmine',
  chromeOnly: true,
  seleniumAddress: 'http://localhost:4444/wd/hub',
  specs: ['spec.js'],
  jasmineNodeOpts: {
    showColors: true,
    defaultTimeoutInterval: 30000,
    print: function() {}
  },
  onPrepare() {
    require('ts-node').register({
      project: 'e2e/tsconfig.e2e.json'
    });
    jasmine.getEnv().addReporter(reporter);  
  },
  afterLaunch: function(exitCode) {
    return new Promise(function(resolve){
      reporter.afterLaunch(resolve.bind(this, exitCode));
    });
  }
};

提前致谢!

最佳答案

您可以通过添加“protractor-screenshoter-plugin”进行检查

plugins: [{
    package: 'protractor-screenshoter-plugin',
    screenshotPath: <specify the path>,
    screenshotOnExpect: 'failure',
    screenshotOnSpec: 'failure+success',
    withLogs: 'true',
    writeReportFreq: 'asap',
    imageToAscii: 'failure',
    htmlReport:'true',
    verbose:'info',
    clearFoldersBeforeTest: true,
    failTestOnErrorLog: {
        failTestOnErrorLogLevel: 900
    }
},

还可以查看https://www.npmjs.com/package/protractor-screenshoter-plugin

关于node.js - protractor-jasmine2-screenshot-reporter 未在所需文件夹中生成屏幕截图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49313699/

相关文章:

javascript - Mongoose 嵌入式文档更新

css - 无法找到 @import 文件 nib.styl

javascript - 如何覆盖 javascript 代码模式 || {}

javascript - Angular Jasmine : testing component that draws dom using timeout

node.js - 在 Node js中找不到模块

node.js - NodeJS类结构中的MongoDB

javascript - 删除带有指令的特殊字符, Angular 不起作用

Angular Universal 应用不断加载问题

html - 数据表寻呼机的下一个按钮和后退按钮不起作用

angularjs - 如何在 jasmine 规范中使用 $promise.then 模拟 AngularJS $resource