gpt4 book ai didi

javascript - 不确定 AngularJS 单元测试中的错误

转载 作者:行者123 更新时间:2023-11-28 07:38:58 24 4
gpt4 key购买 nike

我正在尝试在 AngularJs 中对 Controller 进行单元测试,并且遵循 AngularJs 文档作为指南。 https://docs.angularjs.org/guide/controller

在指南中(在上面的链接中),他们在 Controller 中有此代码

$scope.spice = "habanero";

以及测试中的这段代码

it('should set the default value of spice', function() {
expect($scope.spice).toBe('habanero');
});

在我正在测试的 Controller 中,有一些如下代码:

$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});

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

关于javascript - 不确定 AngularJS 单元测试中的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28275917/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com