【发布时间】:2014-06-13 10:44:44
【问题描述】:
我已经为我们的控制器/路由器编写了简单的单元测试。但不能让它们由实习生运行。路由器模块需要加载其他模块,例如在这种情况下,pace.js,我需要将它添加到实习生的配置文件作为加载器/包中的依赖项......然后它加载 Pace 模块正常,但实习生的跑步者因“参考错误:窗口未定义”而失败. Pace 模块需要在浏览器中运行,但实习生似乎在 Node 上下文中运行它......我正在使用以下命令:
node node_modules/intern/client.js config=test/intern
我试过this answer,即。从 loader/packages 中取出 Pace 模块,并且仅当实习生在主机浏览器上下文中时才添加测试用例。但是实习生跳过我的测试用例,因为它无法进入 if(has) 块...这里是我添加到 intern.js 的代码:
var suites = [];
suites.push('test/unit/all');
if (has('host-browser')) {
suites.push('test/unit/app/controller/Router');
}
return {
// ...
suites: suites,
// ...
};
Intern 似乎正在将其上下文切换到 Node,如何将其保留在浏览器中?
【问题讨论】:
标签: javascript node.js unit-testing intern