4

我正在尝试使用jasmine-ajax 库来模拟带有grunt-contrib-jasmine 的ajax 请求,但似乎 jasmine 无法找到该库(它说 jasmine.Ajax 未定义)。

我的咕噜声文件:

   jasmine: {
            test:{
                src :[ '<%= watch.files %>'],
                options: {
                    vendor: 'vendor/mock-ajax.js',
                    specs : ['specs/**/*spec.js'],
                    helpers : 'specs/helpers/*.js',
                    timeout : 10000
                }
            }

我下载了 mock-ajax.js 并将其放在供应商文件夹中。这是出现错误的测试部分:

  beforeEach(function() {
            jasmine.Ajax.install();
        });
4

2 回答 2

3

解决了..为了其他有同样问题的人的利益:https ://github.com/pivotal/jasmine-ajax/blob/master/lib/mock-ajax.js 中的文件对我不起作用。我通过 npm 安装了 jasmine-ajax,然后从 gruntfile 中引用了它的 mock-ajax.js 版本: vendor: ['node_modules/jasmine-ajax/lib/mock-ajax.js'],

感谢 jsoverson 在检查路径时提供的提示(https://github.com/gruntjs/grunt-contrib-jasmine/issues/111#issuecomment-51806488

于 2014-08-11T18:04:20.577 回答
0

这是最近一个项目的设置,我刚刚用一个新的“git clone”、“npm install”、“grunt test”进行了测试,它开箱即用!希望能帮助到你:

  jasmine: {
      test:{
        src :[
          '<%= watch.files %>'
        ],
        options: {
          vendor: ['node_modules/jasmine-ajax/lib/mock-ajax.js',
                   'node_modules/jquery/dist/jquery.js',
                   'node_modules/jasmine-jquery/lib/jasmine-jquery.js',
                   'node_modules/handlebars/dist/handlebars.js',
                  ],
          specs : ['spec/helpers/*.js',
                   'spec/**/*spec.js'],
          helpers : ['spec/helpers/*.js'],
          timeout : 10000,
          keepRunner: true
        }
      },
于 2015-07-17T14:24:30.963 回答