为什么'ng e2e'命令不能真正起作用?

时间:2019-02-06 09:02:02

标签: angular jasmine protractor

我尝试在此项目上运行'ng e2e'

automate-end-to-end-e2e-testing-for-angular-7-using-protractor-jasmine

但是此命令不会执行以下操作:

1-在浏览器中运行规范(默认浏览器配置为chrome,并显示“ Chrome正在由自动测试软件控制”消息)

2-在控制台上记录测试执行结果,如下所示。

termainl显示此内容:

terminal message

并且intellij IDEA在app.e2e-spec.ts页面顶部显示此消息:

TSLint:FetalError:Failed to load

怎么了?

1 个答案:

答案 0 :(得分:0)

我通过运行代码进行了检查。很明显,protractor.conf.js文件夹中缺少e2e文件。

该文件是必需的,因为您已经引用了Line 113angular.json文件中的文件。

protractor.conf.js负责为Protractor提供配置以进行e2e测试。通常情况如下:

// Protractor configuration file, see link for more information
// https://github.com/angular/protractor/blob/master/lib/config.ts

const { SpecReporter } = require('jasmine-spec-reporter');

exports.config = {
  allScriptsTimeout: 11000,
  specs: [
    './src/**/*.e2e-spec.ts'
  ],
  capabilities: {
    'browserName': 'chrome'
  },
  directConnect: true,
  baseUrl: 'http://localhost:4200/',
  framework: 'jasmine',
  jasmineNodeOpts: {
    showColors: true,
    defaultTimeoutInterval: 30000,
    print: function() {}
  },
  onPrepare() {
    require('ts-node').register({
      project: require('path').join(__dirname, './tsconfig.e2e.json')
    });
    jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
  }
};