【问题标题】:Testing javascript with Chutzpah and requirejs使用 Chutzpah 和 requirejs 测试 javascript
【发布时间】:2013-03-17 10:27:31
【问题描述】:

我只是想知道是否有一个简单的教程展示了如何在 Visual Studio 中使用 Chutzpah、require.js 和 jasmine 测试 javascript。

基本上,我想在不使用 .html 文件的情况下运行测试,这样我就可以在 vs 测试资源管理器中看到结果。

【问题讨论】:

    标签: javascript visual-studio requirejs jasmine chutzpah


    【解决方案1】:

    这是一个非常有用的视频,可帮助您开始使用 Chutzpah 和 Jasmine ...

    http://www.youtube.com/watch?v=meJ94rAN7P8

    我认为,如果您添加 Require js,就如何设置而言,视频中的演示不会有太大的不同。

    【讨论】:

    • 不幸的是,它确实 chutzpah 等待页面加载完成,但是 requirejs 可能仍在等待模块下载。结果是 Chutzpah 没有看到测试并声明 0 测试成功。
    • @SaintGerbil 您需要在 chutzpah.json 中将 TestHarnessReferenceMode 设置为 AMD 并按照我在答案中发布的示例链接进行操作。
    【解决方案2】:

    我设法通过添加一个加载所有测试模块的 AMD 模块来运行测试;也就是说,我创建了 all.test.js 文件,在其中我只是将所有测试模块作为依赖项加载:

    requirejs.config({
        // same as the applications main baseUrl
        baseUrl: '../',
    });
    
    requirejs([
          'tests/moduleA',
          'tests/moduleB'
        ],
        function () { }
    );
    

    从某种意义上说,这是测试模块的主要需求模块。

    现在您可以右键单击并在浏览器中打开它,或者您可以使用测试运行器来运行测试。

    【讨论】:

      【解决方案3】:

      您可以在此处找到一些示例代码: https://chutzpah.codeplex.com/SourceControl/latest#Samples/RequireJS/Jasmine/tests/base/base.jasmine.test.js

      请注意,如果您想在 Chutzpah 和 Jasmine 中使用 requirejs,您需要在 chutzpah.json 中将 TestHarnessReferenceMode 设置为 AMD。否则测试将不会在浏览器中运行。

      {
          "Framework": "jasmine",
          "TestHarnessReferenceMode": "AMD",
          "TestHarnessLocationMode": "SettingsFileAdjacent",
          "References": [
              { "Path": "require-2.1.8.js" },
              { "Path": "config.js" }
          ],
          "Tests": [
              { "Path": "tests" }
          ]
      }
      

      【讨论】:

      • 你,先生,成就了我的一天!
      猜你喜欢
      • 1970-01-01
      • 2014-07-27
      • 2016-05-28
      • 1970-01-01
      • 2013-11-13
      • 2013-08-25
      • 2013-11-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多