尝试从cmd提示符

时间:2016-09-30 13:24:03

标签: unit-testing jasmine protractor

通过cmd提示我的Protractor e2e测试运行正常。但是,只要我为AngularJS控制器添加一个简单的单元测试,就找不到angular-mocks

我在这样的Win 7 cmd提示符下运行Protractor,这对我的所有E2E UI测试都很有用:

> node_modules\.bin\protractor conf.js

但是,一旦我加入sat.controller.spec.js' in my conf.js` - 错误是:

Stack:
  TypeError: module is not a function

我的 spec.js 文件显示:

(function(){

  describe('satController', function() {

  beforeEach(module('SATApp'));        // *** CRASHING HERE ***
    it('Should do a good job, function(){
       expect(true).toBe(true);
    });
  });

}());

这是我的量角器conf.js



var Jasmine2HtmlReporter = require('protractor-jasmine2-html-reporter');

exports.config = {
    directConnect: true,
    
    capabilities: {
        'browserName': 'chrome'
    },

    framework: 'jasmine',

    specs: [
        'sat.index.spec.js',
        'sat.TopNavBar.spec.js'
        //,'sat.controller.spec.js'
        ]
};




仅供参考:我的应用程序正在http://localhost:64174上运行,我已将angular-mocks.js添加到index.html,但Jasmine测试找不到它。

所以主要的问题是:我在哪里引用angular-mocks.js以使Jasmine单元测试与我的角度模拟一起工作?

我已经看过specrunner.html示例,以及jasmine.json配置示例;但是,我正在与它斗争。

提前感谢...

* **更新 ***

出于完全的沮丧,我仔细研究了Karma runner的单元测试。很高兴(至少现在)我设法使用angular-mocks.js进行了非常基本的单元测试。

我做了以下事情(即http://karma-runner.github.io/1.0/intro/configuration.html):

1)npm install karma

2)`node_modules.bin \ karma init' (默认创建karma.conf.js)

3)将我的所有app文件添加到conf.js的files:[ ]属性中) 看到这个很好的例子:https://github.com/yearofmoo-articles/AngularJS-Testing-Article/blob/master/test/karma-shared.conf.js

4)创建了我的controller.spec.js文件(另见这个很好的例子https://github.com/yearofmoo-articles/AngularJS-Testing-Article/blob/master/test/unit/controllers/controllersSpec.js

5)来自cmd提示符:node_modules\.bin\karma start karma.conf.js

0 个答案:

没有答案