原帖地址:http://www.cnblogs.com/zhangzexin/archive/2013/06/01/quint-unit-testing.html
单元测试的必要性和历史之类的东西就不讲了,喜欢的可以自己google一下.
QUint是jQuery团队操刀的一个用于javascript单元测试的类库,在同类中算是比较简洁高效.今天以QUint来讲一下单元测试的一些基本的使用方法,算是记录自己的学习过程,也希望能帮到各位看官.
我们看看简单的基本语法先?恩.好!
-
equal() --- 简单的比较测试,看看测试的值是否期望所要的值:
test( "equal test", function() {
equal( 0, 0, "Zero; equal succeeds" );
equal( "", 0, "Empty, Zero; equal succeeds" );
equal( "", "", "Empty, Empty; equal succeeds" );
equal( 0, 0, "Zero, Zero; equal succeeds" );
equal( "three", 3, "Three, 3; equal fails" );
equal( null, false, "null, false; equal fails" );
});
传入的参数1和参数2如果可以用"=="计算来返回true,则test成功,否则该次test返回失败.
-
deepEqual()--- 然后是检测一个对象的值是否符合预期:
test( "deepEqual test", function() {
var obj = { foo: "bar" };
deepEqual( obj, { foo: "bar" }, "Two objects can be the same in value" );
});
-
ok() --- 根据传入的boolean值来返回一个检测状态 :
test( "ok test", function() {
ok( true, "true succeeds" );
ok( "non-empty", "non-empty string succeeds" );
ok( false, "false fails" );
ok( 0, "0 fails" );
ok( NaN, "NaN fails" );
ok( "", "empty string fails" );
ok( null, "null fails" );
ok( undefined, "undefined fails" );
});如下图所示: