我和我的团队正在开发一个包含大量 Angular 代码和 Jasmine 测试的 Web 应用程序。我们正在使用 Visual Studio 和 ReSharper 的内置 Jasmine 测试运行器。为了 ReShaper,我们的 JS 测试文件都在顶部设置了引用路径,如下所示
/// <reference path="/path/to/somefile.js" />
我们有很多这样的引用资料。对于每个新的测试文件,我们都必须添加这些引用。如果我们有一个新的组件或外部库,我们必须添加对几乎所有现有测试文件的另一个引用。对于包含外部 Angular 模块尤其如此。
有没有办法在 resharper 中为 js 测试创建共享引用文件?当您的解决方案包含大量较小的文件时,这真的成为核心
最佳答案
是的,您可以只创建一个包含所有其他引用的引用文件。然后您只需将该引用文件包含在您的 js 测试文件中。
在 js 测试文件(规范)中,您只需包含以下内容:
/// <reference path="defaultReferences.js" />
然后在 defaultReferences.js 文件中添加所需的所有引用:
/// <reference path="../../App/lib/jquery/jquery-2.1.0.js" />
/// <reference path="../../App/lib/jquery/jquery.cookie.js" />
/// <reference path="../../App/lib/angular-1.3.0-beta.3/angular.js" />
那么你只需要在defaultReferences中添加一个新的引用文件,而不是全部
更新
在 @sarin 下面的问题之后,我将尝试解释我的项目中的文件夹结构是怎样的:(我还有 resharper 8.2 和 jasmine 2.0)
.. [网络应用]
.... [库]
...... [棱 Angular 分明]
...... 引用.js
.... [js]
...... [帐号]
......... accountController.js
...... [篮子]
......... 篮子服务.js
.... [测试]
...... [ helper ]
...... [规范]
......... [账号]
.......... accountControllerSpec.js
......... [篮子]
.......... basketServiceSpec.js
然后在我的 basketSerivceSpec.js 中,引用看起来像这样:
/// <reference path="../../../lib/references.js" />
/// <reference path="../../../js/basket/basketService.js" />
因此,如果您遇到 resharper 未运行测试的情况,请查看引用路径。
关于javascript - 在 ReSharper JavaScript 测试中共享引用路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24660128/