使用ReSharper进行AngularJS单元测试

前端之家收集整理的这篇文章主要介绍了使用ReSharper进行AngularJS单元测试前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用ReSharper测试运行器运行AngularJS控制器的Jasmine单元测试,这样我就可以在VS 2012中的一个地方运行我的客户端和服务器端测试.

我遇到了ReSharper测试运行器失败的问题,其中包含“不确定:测试未运行”的消息.使用AngularJS Seed项目附带的测试运行程序运行相同的测试.

这是我对故障排除的简单测试:

/// <reference path="~/Scripts/angular/angular.js"/>
/// <reference path="~/tests/test/lib/angular/angular-mocks.js"/>
/// <reference path="~/Scripts/app/controllers.js"/>

'use strict';

describe('controllers',function(){
  beforeEach(module('myApp.controllers'));

  it('should ....',inject(function() {
      expect(1).toEqual(1);
  }));
});

我怀疑它与我的引用有关,因为如果我删除了对inject的调用,我的测试运行正常.但是,inject是在angular-mocks.js中定义的(我正在引用它)所以我不确定问题是什么.

有什么建议?

你对ReSharper跳过内联注入的预感是正确的,它似乎期望函数在它解析文件以获得测试列表时.我已经把注入移动到beforeEach或者它的主体之间,这使得ReSharper再次开心.顺便说一句,我还在顶部添加了对jasmine.js的引用(在其他引用之前),以摆脱ReSharper关于未定义的Jasmine全局变量的警告.

猜你在找的Angularjs相关文章