我正在为我的AngularJS控制器进行一些多用户测试,因为我的用户有不同的角色和设置。第一个总是很好用,但随后的尝试永远不会发出HTTP模拟请求的尝试,因为控制器是单例。有没有办法让我清除所有现有的控制器,甚至整个Angular模块设置并重新启动它以便我可以执行这些类型的测试?
答案 0 :(得分:2)
您是否尝试过在beforeEach功能中创建控制器?这样,您的控制器将在每次测试时重新创建。
beforeEach(inject(function ($rootScope, $controller, $location) {
root = $rootScope;
scope = $rootScope.$new();
location = $location;
controller = $controller('AccountInfoController', { $scope: scope, $location:$location, customer: customer });
}));
答案 1 :(得分:-1)
如果您想要清除模块
,请尝试此代码 angular.module('app',[]);