【发布时间】:2013-04-20 18:25:24
【问题描述】:
我有一些现有的 Javascript 代码希望移植到 jQuery 插件。代码本身并不复杂:具有不同照片大小的 Flickr API 照片库,还有一些其他的东西。我快速编写了它并且它足够稳定,但我想以“正确的方式”重做它。
我使用 Grunt 和 Mocha 建立了一个基于 Yeoman 的简单 TDD 环境,它运行良好。我遇到的问题是我的插件将像大多数 jQuery 插件一样工作,有一个简单的入口点:
$( '#ele' ).myAwesomePlugin( { ... } ); // Do all the things
我正在为从哪里开始编写测试而摸不着头脑。虽然我已经拥有完成插件的大部分代码,但我正在尝试通过测试驱动开发的动作,我不知道如何从这个高级点过渡到较小的部分的代码。
程序流程的一些阶段是:与 Flickr 通信、收集照片(或不收集照片)、将它们分成各种尺寸,然后将它们排列到一个容器中。
插件本身(理想情况下)只有一种可公开访问的方法,但是,如果是这种情况,我的测试应该如何与我的更深层次的逻辑挂钩?我是否应该将我的代码拆分成更小的、可测试的不是 jQuery 插件的块,然后将它们组合起来?我很好奇是否有办法让测试本身来推动这种发展。
任何关于阅读材料或文章的建议都会非常有帮助。终于可以做 TDD 我很兴奋!
【问题讨论】:
标签: javascript tdd bdd agile mocha.js