Javascript 不确定angularjs单元测试中的错误

Javascript 不确定angularjs单元测试中的错误,javascript,angularjs,unit-testing,Javascript,Angularjs,Unit Testing,我正在尝试用AngularJs对一个控制器进行单元测试,并以AngularJs文档为指导https://docs.angularjs.org/guide/controller 在指南中(在上面的链接中),控制器中有此代码 $scope.spice = "habanero"; 这个代码在测试中 it('should set the default value of spice', function() { expect($scope.spice).toBe('habanero');

我正在尝试用AngularJs对一个控制器进行单元测试,并以AngularJs文档为指导<代码>https://docs.angularjs.org/guide/controller

在指南中(在上面的链接中),控制器中有此代码

$scope.spice = "habanero";
这个代码在测试中

it('should set the default value of spice', function() {
      expect($scope.spice).toBe('habanero');
    });
在我正在测试的控制器中,有一些代码如下:

$scope.sessionViewModel = session;
在我的测试中,我写了以下内容:

it('should set the default value of sessionViewModel', function(){
            expect($scope.sessionViewModel).toBe(session);
        });
但是我得到一个错误,说
TypeError无法读取未定义的属性“sessionViewModel”

我不确定我做错了什么

整个测试文件:

describe('forgotPasswordCtrl function', function() {

    describe('forgotPasswordCtrl', function(){
    var $scope;
    var returnMsg = 'Forgot password response message';
    var returnMsgTwo = '/web/tfgm_customer';

    beforeEach(module('forgotPasswordApp'));


    beforeEach(inject(function($rootScope, $controller){
        $scope = $rootScope.$new();
        $controller = ('ForgotPasswordCtrl', {$scope: $scope});
            }));


        it('returns a -forgot password response- message', function(){
            expect($scope.globalError).toEqual(returnMsg);
        });

        it('assigns a url depending on a customer match happens', function(){
            expect(window.location.assign).toEqual(returnMsgTwo);
            });

        it('should set the default value of sessionViewModel', function(){
            expect($scope.sessionViewModel).toBe(session);
        });
      });
    });
试着改变

    $controller = ('ForgotPasswordCtrl', {$scope: $scope});


该错误表示未定义$scope。你能发布你的整个测试文件吗?@SoroushHakami是的,完成了/是的,我做了这个,它没有改变任何东西。。。其他代码是否需要更改?在你看来,这是否可行?嗯,不确定。例如,如果您可以使用Jsfiddle.net创建测试的实时演示,我可以再看一看
    controller = $controller('ForgotPasswordCtrl', {$scope: $scope});