gpt4 book ai didi

javascript - 实习生单元测试 : loading modules that need browser context

转载 作者:行者123 更新时间:2023-11-30 17:26:12 25 4
gpt4 key购买 nike

我已经为我们的 Controller /路由器编写了简单的单元测试。但无法让实习生运行它们。路由器模块需要加载其他模块,例如pace.js 在这种情况下,我需要将它添加到实习生的配置文件中作为加载器/包中的依赖项......然后加载 Pace 模块正常,但实习生的运行者失败并出现“引用错误:未定义窗口” . Pace 模块需要在浏览器中运行,但实习生似乎在 Node 上下文中运行它......我正在使用以下命令:

node node_modules/intern/client.js config=test/intern

我试过了 this answer , IE。从 loader/packages 中取出 Pace 模块,仅当 intern 在主机浏览器上下文中时才添加测试用例。但是 intern 跳过了我的测试用例,因为它无法进入 if(has) block ……这里是我添加到 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,我如何将其保留在浏览器中?

最佳答案

client.js 是 Intern 的 node.js 客户端,在 Node.js 下运行测试。要在浏览器中运行测试,您需要使用 client.html或使用 runner.js 运行测试和一个 WebDriver 服务器,例如 Selenium。

关于javascript - 实习生单元测试 : loading modules that need browser context,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24203491/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com