Angular Js中的Jasmine测试错误

时间:2016-05-30 06:36:09

标签: angularjs jasmine

我想用jasmine测试角度js中的函数。我创建了一个控制器,其中一个范围函数在下面给出。

  app.controller('NavigationCtrl', ['$scope', '$route', '$rootScope', function ($scope, $route, $rootScope) {
    $scope.title="Hello World";     

   $scope.testMe = function () {
        $scope.title = "Welcome";
    }

}]);

另外,我想使用jasmine测试用例从另一个控制器调用上面的控制器函数,即$ scope.testMe。所以,我创建另一个控制器,并尝试从该控制器调用函数。

   app.controller('RunTestCaseCtrl', ['$scope', '$http', '$location', '$route', '$routeParams', '$rootScope', '$timeout', 'MDT_Constant', function ($scope, $http, $location, $route, $routeParams, $rootScope, $timeout, MDT_Constant) {

    describe('mycontroller', function () {
        beforeEach(module('app'));
        it('scopeTestSpec',
            inject(function ($controller, $rootScope) {
                var $scope = $rootScope.$new();
                $controller('NavigationCtrl', {
                    $scope: $scope
                });
                $controller.testMe(); 
                expect($scope.title).toEqual('Welcome');
                console.log('ok');
            }));
    });
}]);

这将给出错误“模块未定义”。

那么,如何使用茉莉花测试从另一个控制器调用控制器方法

0 个答案:

没有答案