如何用茉莉花测试John papa vm.model控制器和工厂单元测试?

时间:2015-07-24 21:50:10

标签: angularjs unit-testing jasmine mocha chai

我一直在使用John Papa的风格指南来处理我的角度应用程序,我刚刚开始进入测试阶段。

然而,我似乎无法找到关于使用mocha,chai和jasmine测试样式的任何好文档。

以下是我的一个控制器的示例

(function () {
'use strict';

angular.module('app').controller('appController', appControllerFunction);

function appControllerFunction($scope, $rootScope, $location, dataService, dataFactory) {

var vm = this;
function getData() 
{
 vm.data = dataService.returnData().then(function(data){
    ... //http service returning data
 });
... 

}
getData();

我的服务和工厂位于.spec.js格式的不同文件夹和文件中。

我一直在尝试使用mocha,chai和jasmine测试控制器和工厂,似乎无法通过测试。

这是我对控制器的测试:

'use strict';

describe('Controller: appController', function(){
var scope, controller, rootScope, location, dataService, dataFactory;

beforeEach(module('app'));


beforeEach(inject(function($controller, $rootScope, _$location_,  dataService, dataFactory )    {
    rootScope = $rootScope;
    controller = $controller;
    scope = $rootScope.$new();
    location = _$location_;
    dataService = dataService;
    dataFactory = dataFactory

    var controller = $controller('appController', {
       $scope: scope,
       $location: location,
       dataFactory: dataFactory
       dataService: dataService
   });

    scope.$digest();
 }));

    it('should be defined', inject(function(dataFactory){
        expect(dataFactory).toBeDefined();
    }));
});

感谢您的投入和帮助!

0 个答案:

没有答案