我正在学习如何使用Angular 2设置Karma并遇到问题。
我遵循了朱莉在她的seed project中所做的工作,并将其应用于我的项目。
一切都可以在Chrome中正常运行,但是当我想使用PhantomJS时出现错误。这也发生在PhantomJS2中...
这是错误:
[karma]: Karma v0.13.22 server started at http://localhost:9877/
[launcher]: Starting browser PhantomJS2
[PhantomJS 2.0.0 (Mac OS X 0.0.0)]: Connected on socket /#1yDrSei5NUX4_WYaAAAA with id 93476222
Missing error handler on `socket`.
TypeError: (msg || "").replace is not a function
at node_modules/karma/lib/reporter.js:45:23
karma.config.js
module.exports = function (config) {
config.set({
basePath : '',
frameworks : ['jasmine'],
files : [
// paths loaded by Karma
{pattern : 'node_modules/systemjs/dist/system-polyfills.js', included : true, watched : true},
{pattern : 'node_modules/systemjs/dist/system.src.js', included : true, watched : true},
{pattern : 'node_modules/es6-shim/es6-shim.js', included : true, watched : true},
{pattern : 'node_modules/angular2/bundles/angular2-polyfills.js', included : true, watched : true},
{pattern : 'node_modules/rxjs/bundles/Rx.js', included : true, watched : true},
{pattern : 'node_modules/angular2/bundles/angular2.js', included : true, watched : true},
{pattern : 'node_modules/angular2/bundles/testing.dev.js', included : true, watched : true},
{pattern : 'karma-test-shim.js', included : true, watched : true},
{pattern : 'app/**/*.js', included : false, watched : true},
{pattern : 'app/**/*.html', included : false, watched : true},
{pattern : 'app/**/*.css', included : false, watched : true},
{pattern : 'test/**/*.ts', included : false, watched : false},
{pattern : 'test/**/*.js', included : false, watched : true},
{pattern : 'test/**/*.js.map', included : false, watched : false}
],
proxies : {
"/app/" : "/base/src/app/"
},
reporters : ['progress'],
port : 9876,
colors : true,
logLevel : config.LOG_INFO,
autoWatch : false,
browsers : ['PhantomJS2'],
singleRun : true
})}
有人知道我在做什么错吗?
提前致谢
最佳答案
确保您的karma.conf.js中有这行
{pattern: 'node_modules/systemjs/dist/system-polyfills.js', included: false, watched: false}, // PhantomJS2 (and possibly others) might require it
这个github项目适用于phantom:
https://github.com/danday74/angular2-coverage/blob/master/karma.conf.js
克隆并播放