javascript - 编写 "unit testable"jQuery 代码?

标签 javascript jquery unit-testing qunit

直到现在,我习惯于在 ready() 函数中编写所有代码,例如:

$(document).ready(function() {
  // all my code
});

现在我看到使用这种方法时,我的代码不是“可单元测试的”,例如我无法从 QUnit 访问 ready() 中的内容

构造与使用 ready() 函数兼容并能够被测试的 jQuery 代码的正确方法是什么?

有没有好的开源代码库或项目可以学习借鉴?

最佳答案

将您的代码放在就绪处理程序中,只调用就绪处理程序之外的函数:

$(document).ready(function() {
  // call some functions outside of handler
});

// most of my code

这样,您也可以调用这些函数进行单元测试。


注意,$(document).ready 有一个快捷方式:

$(function() {
  // call some functions outside of handler
});

// most of my code

关于javascript - 编写 "unit testable"jQuery 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7079981/

相关文章:

javascript - FindOneAndUpdate 对我来说无法正常工作

javascript - 可以进行地理定位,但处于非事件状态

javascript - 让 WebStorm 识别 jest.setupFilesAfterEnv 中定义的方法

javascript - 如何防止在 EJS 中多次打印?

facebook - 如何以编程方式将图片上传到 Facebook?

javascript - 如何同步2个iframe的滚动条

javascript - JQuery load() 第一次没有加载页面

c# - 如何在 ASP.NET MVC 多层应用程序中正确进行单元测试?

javascript - SpyOn 一个 mock 的 Jest 模块没有正确监视

Javascript 重定向,最快的方法吗?