2016-01-20 46 views
0

我正在为我的第一个Angular应用程序编写我的第一个单元测试,所以我有很多问题。角单元测试:检查常量值

在其中一个测试中,我想检查后端服务器的IP地址是用常量函数定义的。

这里是一个声明:

var orderApp = angular.module('orderApp', ['ngRoute', '720kb.datepicker']); 

orderApp.constant('config', { 
    apiUrl:'http://192.192.192.192:6673' 
}); 

下面是测试文件:

'use strict'; 

describe("Order Table page", function(){ 

    beforeEach(module('orderApp')); 

    it('Server IP should be defined', function(){ 
     expect(orderApp.config.apiUrl).toBeDefined(); 
    }); 

}); 

orderApp变量是不确定的,我收到错误。如何引用模块对象?或者有没有更好的方法来检查常量的声明?

+0

我不知道有多大的“单元测试”一常数的点。但如果你这样做,我相信你需要将这个常量注入测试控制器来检查。至少这就是你在应用中实际使用常量的方式。 –

回答

0

尝试注入config常数:

'use strict'; 

describe("Order Table page", function(){ 
    var testee; 

    beforeEach(module('orderApp')); 

    beforeEach(inject('config') { 
     testee = config; 
    }); 

    it('Server IP should be defined', function(){ 
     expect(testee.apiUrl).toBeDefined(); 
    }); 

});