【问题标题】:How do you reference external libraries with Jasmine + Resharper你如何使用 Jasmine + Resharper 引用外部库
【发布时间】:2013-07-26 03:19:48
【问题描述】:

我可以从 Resharper 8.0 单元测试运行器运行 Jasmine 单元测试。 我有一个问题,通常在 html 页面中的任何 Javascript 引用(即在我的情况下为 Ext-Js)然后我无法使用 Resharper 测试运行器,因为您似乎无权访问 Resharper 的 HTML 页面用途。 (我假设它是因为我无法在磁盘上找到它而生成的)

我在想是否有一种方法可以直接从 Javascript 测试文件而不是通过 html 页面调用或加载外部库引用,那么我可以让它工作。我还没有发现 Javascript(或 Ext-Js)是否可行。

【问题讨论】:

    标签: extjs jasmine resharper-7.1 resharper-8.0


    【解决方案1】:

    我为使用 Karma 测试运行器/Jasmine 1.x 和 2.0 版本和处理异步问题编写了 2 个用于处理 ExtJS 4 的存储库:这里它们是:https://github.com/cgauthier/karma_jasmine_1_extjs4https://github.com/cgauthier/karma_jasmine_2_extjs4。加载外部引用的技巧是将它们作为文件添加到模块声明中。

    【讨论】:

      【解决方案2】:

      目前看来要走的路是将包含语句硬编码为套件文件中的特殊 cmets(称为 doc-cmets 引用),例如:

      // include external files like so:
      /// <reference path="/path/to/external-file.js" />
      
      // than write your testing suite as usual:
      describe('a silly suite', function() {
          it('should test something is happening', function() {
              expect(something).toBe('happening');
          });
      });
      

      请参阅this thread on the ReSharper community,作为此建议的来源。

      【讨论】:

      • 我将文件本地保存在项目中(是一个外部引用文件)并且它有效。有没有办法引用外部文件?即path="server/ext-all-debug.js"
      • 如果 external files 是指位于另一个域中的文件,例如http://cdnjs.cloudflare.com/ajax/libs/1140/2.0/1140.css,我怀疑它会以同样的方式工作。试一试,让我知道这是否有效。
      • 试过了,显然参考文档只支持相对于同一域的本地文件。即外部文件不起作用。我认为这就是我最初遇到问题的地方。将远程文件复制到本地文件就像宣传的那样工作。
      猜你喜欢
      • 2014-05-11
      • 2013-04-19
      • 1970-01-01
      • 1970-01-01
      • 2016-08-25
      • 1970-01-01
      • 2014-10-02
      • 2017-11-22
      • 1970-01-01
      相关资源
      最近更新 更多