我使用jQuery 1.5和Q-Unit来做我的测试。
我正在工作的应用程序有一个文件,作为一个应用程序运行程序,有一个现成的函数和一些其他的东西:
-Main.js——
...
var foo = new Object();
foo.bar = function () {
/* function I'd like to test */
}
foo.ready = function () {
/* sets up the app. I don't want this to run in my test! */
}
$(document).ready(function(){
foo.ready();
});
...
运行ready()函数创建了一堆我不想在单元测试中浮动的对象,但我仍然需要测试Main.js中的foo.bar()
和其他函数。我可以重写ready()回调吗?还是有更好的解决方案?谢谢!
你可以这样做,在jQuery文件加载后,你可以检查它的单元测试,然后应用这个
$.fn.ready = function() {
//any code here, or leave it blank and all ready method will call this method instead jQuery one
}