如何将 Angular2 Quickstart 配置为 运行 phantomjs?

How to configure Angular2 Quickstart to run phantomjs?

我正在尝试弄清楚如何使用 phantomjs 运行 Angular2 Quickstart 的测试。

我认为这些步骤足以配置 Karma:

1.克隆存储库

$ git clone https://github.com/angular/quickstart.git
$ cd quickstart

2。安装 phantomjs 和 phantomjs 启动器

$ npm install --save-dev phantomjs
$ npm install --save-dev karma-phantomjs-launcher

3。更改 karma.conf.js

//第一次改变
要求('karma-chrome-launcher')=>要求('karma-phantomjs-launcher')

// 第二次改变
浏览器:['Chrome'] => 浏览器:['PhantomJS']

4.安装快速启动应用程序

$ npm install

5. 运行 测试

$ npm run test-once

报如下错误:

PhantomJS 2.1.1 (Linux 0.0.0) ERROR TypeError: undefined is not a function (evaluating 'System.config') at karma-test-shim.js:30

我错过了什么或做错了什么?

谢谢。

在那之前有一个错误:404 试图找到 system-polyfills.js

404: /base/node_modules/systemjs/dist/system-polyfills.js

如果将其添加到 karma 配置中,错误就会消失。

files: [
  // System.js for module loading
  'node_modules/systemjs/dist/system.src.js',
  'node_modules/systemjs/dist/system-polyfills.js',

不太确定有什么区别(为什么 Chrome 不需要)。我猜 this issue 是你的。你应该问问他们。