我正在尝试选择一个设置来测试使用 Backbone 和 RequireJS 的 web 应用程序。
我将尝试从 javascript 进行大部分单元测试,我怀疑在调用测试框架之前加载我的整个应用程序还是使用 RequireJS 动态加载每个测试正在测试的模块是否更好。
由于本站仅用于问答,不开放讨论,我将重新表述:您是否有强烈的理由反对在单元测试时不预先加载整个应用程序?
我正在尝试选择一个设置来测试使用 Backbone 和 RequireJS 的 web 应用程序。
我将尝试从 javascript 进行大部分单元测试,我怀疑在调用测试框架之前加载我的整个应用程序还是使用 RequireJS 动态加载每个测试正在测试的模块是否更好。
由于本站仅用于问答,不开放讨论,我将重新表述:您是否有强烈的理由反对在单元测试时不预先加载整个应用程序?
最好的方法是在单元测试中分别测试每个模型/集合/视图。在单元测试中启动整个应用程序会使测试模块的所有案例变得非常困难。正如您提到的 requireJS ,您还应该使用squireJS模拟模块的大部分依赖项。
但是您还应该进行一些集成测试,在其中使用 selenium、casperJS 或 capybara 等工具在无头浏览器中测试整个应用程序的行为。
使用 requirejs,您可以通过两种方式预先解释加载: