6

我有一些 qunit 测试设置来测试我广泛使用 requirejs 的代码。我使用 Chutzpah 来执行在 VS 中运行的测试。如果我在浏览器中运行测试,但不是仅在 VS 中运行,一切正常。它似乎忽略了我的 require.config 调用。如果我将文件中的引用更改为不指向垫片而是直接指向文件,它将起作用,但这会破坏我的代码中的其他内容。

有人有这个工作吗?如果是这样,怎么做?我查看了他们的示例代码,但它没有使用 require.config 和 shims。

4

1 回答 1

0

本教程开始。

要使用 shims 运行配置,只需在 chutzpah.json 中添加对配置文件的引用。下面的示例,为了便于阅读而略微简化。

chutzpah.json 文件

{
  "Framework": "qunit",
  "TestHarnessReferenceMode": "AMD",
  "TestHarnessLocationMode": "SettingsFileAdjacent",
  "References": [
    { "Path": "../Scripts/Components/RequireJS/require.js" },
    { "Path": "config.js" }
  ]
}

config.js 文件

require.config({
    "paths": {
        "jquery": "../Scripts/jquery-2.1.4",
        "jquery-linq": "../Scripts/jquery.linq",
        "signalr": "../Scripts/jquery.signalR-2.2.0",
        "signalrhubs": "../Scripts/mock-signalr-hubs",
        "knockout": "../Scripts/knockout-3.3.0",
        "constants": "../Scripts/constants",
        "HomeVm": "Source/HomeVm"
    },
    "shim": {
        "jquery.linq": {
            "deps": ["jquery"]
        },
        "bootstrap": {
            "deps": ["jquery"]
        },
        "signalr": {
            "deps": ["jquery"]
        }
    }
});
于 2015-10-22T06:35:01.640 回答