使用angular-cli运行量角器时,SpecReporter不是构造函数错误

时间:2017-03-24 13:42:45

标签: angular protractor angular-cli

当我尝试运行ng e2e或直接protractor命令时,我收到此错误:

[14:39:00] I/update - chromedriver: chromedriver_2.28 up to date
[14:39:04] I/launcher - Running 1 instances of WebDriver
[14:39:04] I/direct - Using ChromeDriver directly...
[14:39:44] E/launcher - Error: TypeError: SpecReporter is not a constructor
    at onPrepare (/home/younes/repo/cip_front/protractor.conf.js:30:34)
    at q_1.Promise (/home/younes/repo/cip_front/node_modules/protractor/lib/util.ts:48:39)
    at Function.promise (/home/younes/repo/cip_front/node_modules/q/q.js:682:9)
    at Object.runFilenameOrFn_ (/home/younes/repo/cip_front/node_modules/protractor/lib/util.ts:39:10)
    at plugins_.onPrepare.then (/home/younes/repo/cip_front/node_modules/protractor/lib/runner.ts:103:21)
    at _fulfilled (/home/younes/repo/cip_front/node_modules/q/q.js:834:54)
    at self.promiseDispatch.done (/home/younes/repo/cip_front/node_modules/q/q.js:863:30)
    at Promise.promise.promiseDispatch (/home/younes/repo/cip_front/node_modules/q/q.js:796:13)
    at /home/younes/repo/cip_front/node_modules/q/q.js:556:49
    at runSingle (/home/younes/repo/cip_front/node_modules/q/q.js:137:13)
    at flush (/home/younes/repo/cip_front/node_modules/q/q.js:125:13)
    at _combinedTickCallback (internal/process/next_tick.js:67:7)
    at process._tickCallback (internal/process/next_tick.js:98:9)
[14:39:44] E/launcher - Process exited with error code 100

2 个答案:

答案 0 :(得分:23)

这是因为Jasmine的变化。将您的量角器配置文件更改为:

var SpecReporter = require('jasmine-spec-reporter').SpecReporter;

而不是:

var SpecReporter = require('jasmine-spec-reporter');

答案 1 :(得分:1)

您需要执行以下操作:

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

jasmine.getEnv().addReporter(new SpecReporter());