我使用karma-jasmine安装了Karma和karma-jasmine,如下所示:
$ npm install -g generator-angular
$ mkdir myapp && cd $_
$ yo angular
鉴于myapp/bower.json
未列出Yeoman作为Jasmine安装的前端软件包之一,myapp/karma.conf.js
列出Bower作为默认测试框架我对命令grunt test
的工作感到惊讶。 (Gruntfile.js
,bower.json
和karma.conf.js
文件都是作为yo angular
脚手架流程的一部分创建的。)
仔细检查myapp/node_modules
个包后,我意识到Jasmine并未指向karma-jasmine的单独安装。 Jasmine插件实际上会安装karma-jasmine:
▼ myapp/
▼ karma_jasmine/
▼ lib/
adapter.js
index.js
jasmine.js
鉴于Jasmine表示它是karma-jasmine测试框架的“适配器,”我有点惊讶Jasmine并不需要我们单独安装karma-jasmine。
以下是使用的各种软件包版本:
myapp/package.json
内容的“~0.10.8”myapp/package.json
内容的“~0.1.4”npm list -g | grep yo
命令结果“1.0.6”答案 0 :(得分:29)
您可以通过运行以下规范来了解您正在使用的茉莉花版本:
describe('Test to print out jasmine version', function() {
it('prints jasmine version', function() {
console.log('jasmine-version:');
console.log(jasmine.version || (jasmine.getEnv().versionString && jasmine.getEnv().versionString()));
});
});
然后检查控制台或浏览器中的业力输出。它应该是这样的:
LOG: 'jasmine-version:'
LOG: '2.3.4'
茉莉花库已包含在jasmine-runner插件中,您已经发现了。您可以在插件的源代码中找到加载此文件的确切位置:https://github.com/karma-runner/karma-jasmine/blob/master/lib/index.js(第7行)
您可以尝试修改插件,以便升级,并向拉玛发送拉取请求(参见http://karma-runner.github.io/0.10/dev/contributing.html)
答案 1 :(得分:12)
更好的选择是坚持karma-jasmine中的茉莉花版本并更新整个包装。 您可以使用以下命令获取所有已安装软件包的版本:
npm ls
获取已安装的全局包的版本:
npm ls -g
要查看CDN上可用的最新版本,请使用:
npm view karma-jasmine version
在更新之前,您可以使用以下方式查看CDN上的所有版本:
npm view karma-jasmine versions
安装特定版本:
npm install karma-jasmine@~0.2.2
(0.2.2是最新的)。