预期spyOn Jasmine AngularJs不能按预期工作

时间:2020-05-11 19:01:19

标签: angularjs jasmine karma-jasmine

我正在使用Jasmine版本 “茉莉花芯”:“ ^ 2.5.2”

我有以下一种伪指令init方法:

return {
        restrict: 'E',
        template: templateStr,
        scope: false,
        controller:  function($scope) {
            const init = ()=> {
                $scope.activeTab = 0;
                $scope.objectA = {};
                $scope.functionA();
                $scope.propA = false;
            };

            const functionA = () => {
                /**Code to be executed**/
            }
            init();
        }
}

现在,我正尝试为init函数编写单元测试,如下所示:

it('should call functionA function', () => {
    spyOn(_scope, 'functionA').and.callFake();
    expect(_scope.functionA).toHaveBeenCalled();
})

这样做之后,我在运行单元测试时遇到错误

预期的间谍函数Ato已被调用。

我是在做某些事情还是做错了,就像在Angular2及更高版本中使用相同的语法一样。

0 个答案:

没有答案