10

在基于 angular-seed 项目的项目中,我正在运行单元测试,./scripts/test.sh --log-level debug但我看到的所有日志消息都不是来自我的应用程序。我怎样才能见到他们?在我的应用程序中,我使用$log.

4

3 回答 3

15

谢谢。如前所述,测试可以注入console使用. 对于后代,不能通过但必须注入到函数参数中$log$provide$provideinject(function(...) { ... })module

beforeEach(module('myapp', function($provide) {
  // Output messages
  $provide.value('$log', console);
}));
于 2014-06-06T20:05:17.957 回答
12

得到它的工作!如果我console.log直接使用它会起作用但现在我正在使用$log我必须将它修补在一个beforeEach(看起来默认情况下它不是由 angularjs 连接的):

$provide.value('$log', console);
于 2014-02-06T12:29:16.897 回答
4

为清楚起见,您必须像这样构造它:

beforeEach(module('myapp'));

beforeEach(module('myapp', function($provide) {
  // Output messages
  $provide.value('$log', console);
})); 
于 2014-12-08T03:04:44.403 回答