Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为每个单元测试调用Angular module.run方法_Javascript_Angularjs_Unit Testing_Karma Jasmine - Fatal编程技术网

Javascript 为每个单元测试调用Angular module.run方法

Javascript 为每个单元测试调用Angular module.run方法,javascript,angularjs,unit-testing,karma-jasmine,Javascript,Angularjs,Unit Testing,Karma Jasmine,乡亲们 我的angular应用程序有一个jasmine karma单元测试设置。问题是在my app.js defined module.ru中,此方法调用的是自定义服务LoginService,该服务反过来调用$http服务。我在这里遇到的问题是,我正在测试我的LoginService并模拟$http服务,当我尝试刷新时,它会抛出错误: Error: Unexpected request: GET /frontend/login No more request expected 我相信这

乡亲们

我的angular应用程序有一个jasmine karma单元测试设置。问题是在my app.js defined module.ru中,此方法调用的是自定义服务LoginService,该服务反过来调用$http服务。我在这里遇到的问题是,我正在测试我的LoginService并模拟$http服务,当我尝试刷新时,它会抛出错误:

 Error: Unexpected request: GET /frontend/login
 No more request expected
我相信这个额外的请求来自module.run

 app.run(['LoginService',function(LoginService){

     LoginService.checkLoginStatus().then(function(status){
         console.log(status);

       }, function(status){

           console.log(false);

      });

}]);

这是我的plunkr代码:

我的问题是,在我的单元测试中,我正在引导整个应用程序

 beforeEach(module("app")).
一旦我将我的控制器、指令和服务分割成它们自己的模块

 beforeEach(module("app.controllers"))
 beforeEach(module("app.directives"))
 beforeEach(module("app.services"))

然后我就不再面对这个问题了。我配置的测试不是单元测试,而是e2e测试

我的问题正好相反。加载配置文件的My module.run方法根本没有运行。@N13是否正在运行e2e测试?您正在引导主模块吗?这不再是一个问题。不过谢谢你。