我有一些qunit测试设置来测试我广泛使用requirejs的代码。我使用Chutzpah在VS中执行测试。如果我在浏览器中运行测试但不在VS内部,则一切正常。它似乎忽略了我的require.config调用。如果我将我的文件中的引用更改为不指向填充程序而是直接指向文件,它将起作用,但这会破坏我的代码中的其他内容。
有没有人有这个工作?如果是这样,怎么样?我查看了他们的示例代码,但它没有使用require.config和shims。
答案 0 :(得分:0)
从this tutorial开始。
要使用填充程序运行配置,只需在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"]
}
}
});