【发布时间】:2016-03-19 12:37:56
【问题描述】:
我有两个函数 funcA() 和 funcB(),我正在为 $scope.funcA() 编写单元测试用例。
定义如下:
function funcB(){
//statements
console.log("At function B");
};
$scope.funcA() = function(){
funcB();
console.log("At function A");
};
现在,当我测试我的 $scope.funcA() 时,实际上正在调用我的 funcB()。如何阻止这种情况并对 funcB() 进行假调用或模拟;在茉莉花中。
【问题讨论】:
-
你不能。该功能必须可访问才能让您监视它。事实上,您的
funcB只能从控制器内部访问。见here -
@yarons 嗨,正确的方法是什么,我应该让我的 funcB() 像 $scope.funcB(){} 一样,以便我能够测试它吗?跨度>
-
我不知道有其他方法可以做到这一点
标签: javascript angularjs unit-testing jasmine