Answers:
创建新项目yeoman角度生成器(哟角度)后,我遇到了相同的错误。
对我来说,解决方案是在package.json中的devDependencies中添加“ karma-jasmine”,然后再次运行“ npm install”。
npm install karma-jasmine --save-dev
这解决了错误消息“没有提供“ framework:jasmine”!
我还必须将karma浏览器启动器添加到devDependencies,因为我得到一条消息,提示未安装启动器(请参阅http://karma-runner.github.io/0.10/config/browsers.html)。
npm install karma-safari-launcher --save-dev
经过我的操作后,我的packages.json看起来像这样:
{
"name": "test1",
"version": "0.0.0",
"dependencies": {},
"devDependencies": {
"grunt": "~0.4.1",
"grunt-autoprefixer": "~0.4.0",
"grunt-bower-install": "~0.7.0",
"grunt-concurrent": "~0.4.1",
"grunt-contrib-clean": "~0.5.0",
"grunt-contrib-coffee": "~0.7.0",
"grunt-contrib-compass": "~0.6.0",
"grunt-contrib-concat": "~0.3.0",
"grunt-contrib-connect": "~0.5.0",
"grunt-contrib-copy": "~0.4.1",
"grunt-contrib-cssmin": "~0.7.0",
"grunt-contrib-htmlmin": "~0.1.3",
"grunt-contrib-imagemin": "~0.3.0",
"grunt-contrib-jshint": "~0.7.1",
"grunt-contrib-uglify": "~0.2.0",
"grunt-contrib-watch": "~0.5.2",
"grunt-google-cdn": "~0.2.0",
"grunt-newer": "~0.5.4",
"grunt-ngmin": "~0.0.2",
"grunt-rev": "~0.1.0",
"grunt-svgmin": "~0.2.0",
"grunt-usemin": "~2.0.0",
"jshint-stylish": "~0.1.3",
"load-grunt-tasks": "~0.2.0",
"time-grunt": "~0.2.1",
"karma-ng-scenario": "^0.1.0",
"grunt-karma": "^0.8.0",
"karma": "^0.12.0",
"karma-jasmine": "~0.2.2",
"karma-safari-launcher": "~0.1.1",
"karma-ng-html2js-preprocessor": "^0.1.0"
},
"engines": {
"node": ">=0.8.0"
},
"scripts": {
"test": "grunt test"
}
}
我将karma.conf和karma-e2e.conf中的以下行更改为使用karma-safari-launcher:
browsers: ['Safari'],
我希望这也对您有用。
Error: No provider for "framework:karma-chrome-launcher"!
这一点
作为@Taco说,这个问题的默认解决方案是安装相应的插件,像这样:npm install karma-jasmine --save-dev
或者这样:npm install karma-mocha --save-dev
。
但是,在运行旧版本时也会发生此错误,karma-cli
因为它们更新了业力加载插件的方式。为了确保您具有最新版本,请运行以下命令:
npm install -g karma-cli
npm install -g karma
与并不相同npm install -g karma-cli
。
npm install -g karma
但是这不起作用。您必须使用npm install -g karma-cli
我的问题出在我的karma.config.js
文件中:
plugins: [require("karma-webpack")]
这导致其他karma-*
插件无法加载,其中包括karma-jasmine
。
karma-webpack
已经在我package.json
的中devDependencies
,因此我plugins
在karma.config.js
文件中对此条目进行了注释。
这是因为我在全球范围内安装了Karma,当我运行karma start命令时,它实际上运行在/ usr / ...而不是我的dev目录中。
在我的情况下,解决方案是删除业力并安装业力-cli。
npm remove -g karma
npm install -g karma-cli
npm install karma-chrome-launcher --save-dev