用业力和茉莉来测试AngularJS

时间:2014-03-26 07:27:43

标签: angularjs npm karma-runner karma-jasmine

我试图写一些单元测试。我得到一个关于角度未定义的错误,所以我想我需要将角度js文件包含在我的其他js文件中...为此我尝试npm安装它...

{
  "name": "jzAddons",
  "description": "A collection of addons for AngularJS",
  "version": "0.0.1",
  "private": false,
  "devDependencies": {
    "angularjs": "git://github.com/angular/angular.js.git",
    "grunt": "0.4",
    "grunt-contrib-jshint": "0.7.2",
    "grunt-contrib-stylus": "0.10.0",
    "grunt-contrib-uglify": "0.2.7",
    "grunt-contrib-clean": "0.5.0",
    "grunt-karma": "*",
    "karma": "~0.12",
    "karma-chrome-launcher": "*",
    "karma-jasmine": "*",
    "karma-phantomjs-launcher": "*"
  }
}

但是npm install失败了:

> npm install
npm WARN package.json jzAddons@0.0.1 No repository field.
npm http GET https://registry.npmjs.org/grunt-contrib-uglify/0.2.7
npm http GET https://registry.npmjs.org/grunt-contrib-jshint/0.7.2
npm http GET https://registry.npmjs.org/grunt-contrib-stylus/0.10.0
npm http GET https://registry.npmjs.org/grunt-contrib-clean/0.5.0
npm http GET https://registry.npmjs.org/grunt-karma
npm http GET https://registry.npmjs.org/grunt
npm http GET https://registry.npmjs.org/karma-chrome-launcher
npm http GET https://registry.npmjs.org/karma-jasmine
npm http GET https://registry.npmjs.org/karma-phantomjs-launcher
npm http GET https://registry.npmjs.org/karma
npm http 304 https://registry.npmjs.org/grunt-contrib-clean/0.5.0
npm http 304 https://registry.npmjs.org/grunt-contrib-stylus/0.10.0
npm http 304 https://registry.npmjs.org/grunt-contrib-uglify/0.2.7
npm http 304 https://registry.npmjs.org/grunt-contrib-jshint/0.7.2
npm http 304 https://registry.npmjs.org/grunt-karma
npm http 304 https://registry.npmjs.org/karma-jasmine
npm http 304 https://registry.npmjs.org/karma-phantomjs-launcher
npm http 304 https://registry.npmjs.org/karma-chrome-launcher
npm http 304 https://registry.npmjs.org/grunt
npm http 304 https://registry.npmjs.org/karma
npm ERR! Error: No version provided
npm ERR!     at needVersion (/usr/local/lib/node_modules/npm/lib/cache.js:1238:40)
npm ERR!     at /usr/local/lib/node_modules/npm/lib/cache.js:1112:10
npm ERR!     at process._tickCallback (node.js:415:13)
npm ERR! If you need help, you may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>

npm ERR! System Darwin 13.1.0
npm ERR! command "node" "/usr/local/bin/npm" "install"
npm ERR! cwd /Users/jzaun/Development/jzAddons
npm ERR! node -v v0.10.18
npm ERR! npm -v 1.3.8
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /Users/jzaun/Development/jzAddons/npm-debug.log
npm ERR! not ok code 0

如何使用角度进行测试?

有没有办法使用grunt安装bower的东西而不必制作bower.json?我真的不想处理2个包装系统: - /我不需要Angular,除了测试之外什么都不需要经过所有的箍... ...

1 个答案:

答案 0 :(得分:0)

不确定它是否对您有所帮助,但这就是我所拥有的:

我用Yeoman用它的生成器角度来构建一个角度应用程序。 它设置了你需要的一切,包括业力和一些样本测试。 然后你可以与你的应用进行比较,看看你缺少什么。

在我的package.json中,我有与karma相关的条目:

"karma-ng-scenario": "~0.1.0",
"grunt-karma": "~0.6.2",
"karma-script-launcher": "~0.1.0",
"karma-firefox-launcher": "~0.1.3",
"karma-chrome-launcher": "~0.1.2",
"karma-html2js-preprocessor": "~0.1.0",
"karma-jasmine": "~0.1.5",
"karma-coffee-preprocessor": "~0.1.3",
"karma-requirejs": "~0.2.1",
"karma-phantomjs-launcher": "~0.1.2",
"karma": "~0.10.9",
"karma-ng-html2js-preprocessor": "~0.1.0"

你看到到处都有版本号,而你有#34; *&#34;。

在我的Karma.conf.js文件中我引用了angular:

files: [
  'app/bower_components/angular/angular.js',
  'app/bower_components/angular-mocks/angular-mocks.js',
  'app/bower_components/angular-resource/angular-resource.js',
  'app/bower_components/angular-cookies/angular-cookies.js',
  'app/bower_components/angular-sanitize/angular-sanitize.js',
  'app/bower_components/angular-route/angular-route.js',
  'app/scripts/*.js',
  'app/scripts/**/*.js',
  'test/mock/**/*.js',
  'test/spec/**/*.js'
],

希望这会有所帮助。 如果您需要更多信息,请告诉我们