jasmin + karma最简单的测试失败,除非我使用旧版本的角球

时间:2018-11-30 09:41:21

标签: angularjs karma-jasmine

我正在处理一个使用angularjs 1.7.3的现有项目。我一周前开始进行这项工作,发现没有任何测试,因此我决定开始在控制器/过滤器上实施一些测试。

我是Jasmin和Karma的新手,但仔细阅读了文档,一切似乎都很好。但是所有测试中最简单的测试失败了:

describe('this is my first filter', function() {

  var $filter;

  beforeEach(inject(function(_$filter_){
    $filter = _$filter_;
  }));

  it('returns 0 when given null', function() {
    //$filter('length');
    expect(true);
  });

});

它不是测试,但是注入失败。确实,如果我删除了beforeEach调用,它将运行。我得到的错误是:

 Error: [$injector:unpr] Unknown provider: $$taskTrackerFactoryProvider <- $$taskTrackerFactory <- $browser <- $rootScope <- $browser

在Google中进行一些搜索后,我发现有人遇到类似的问题,只是将角度模拟降级到1.6.9可以使错误消失  (Angular js 1.6.9 tests Unknown provider: $$taskTrackerFactoryProvider)。

为什么?

我已经在使用角度1.7.3。这是我应该担心的事情吗?奇怪的是,对于一个简单的项目(该项目在几个月前开始,规模很小),我必须使用不同版本的angular才能使工作正常。也许项目有问题。任何提示都可以指示我正确的方向。也许这是一个已知问题?

0 个答案:

没有答案