kmock javascript 單元測試代碼
更新時間:2011年02月06日 16:19:15 作者:
javascript其實是非常需要單元測試的,但是qmock總感覺不好使?或是文檔的新舊有問題,反正我暫時是只需要函數(shù)調(diào)用的次數(shù)判斷,結(jié)果就寫了個kmock
復(fù)制代碼 代碼如下:
(function () {
var KMock = window.KMock = function () {
}
KMock.prototype.setup = function (methodName) {
var instance = this;
instance[methodName] = {
returnAs: function (fn) {
instance["_" + methodName] = function () {
instance[methodName].invokeNum++;
fn.call();
}
},
isVerify: function (exceptNum) {
if (exceptNum != null) {
return exceptNum == instance[methodName].invokeNum;
}
else {
return instance[methodName].invokeNum > 0;
}
},
invoke: function () {
instance["_" + methodName].call();
},
invokeNum: 0
};
return instance[methodName];
}
})();
//自己寫了個mock類,暫時是用來模擬函數(shù),然后判斷函數(shù)的調(diào)用次數(shù),以下是用法
<BR><DIV class=cnblogs_Highlighter><PRE class=brush:javascript>/// <reference path="Flight.js" />
/// <reference path="http://demo.jb51.net/jslib/qunit/qunit.js" />
/// <reference path="KMock.js" />
module("enter coin");
test("enter coin while game has not yet start", function () {
var flight = new KFlight();
var mock = new KMock();
mock.setup("draw").returnAs(function () {
});
flight.draw = mock.draw.invoke;
equal(flight.coinNum, 0);
equal(flight.gameState, 0);
flight.coinEnter();
equal(flight.coinNum, 0);
equal(flight.gameState, 1);
equal(mock.draw.isVerify(1), true);
});
您可能感興趣的文章:
- 使用mock.js隨機數(shù)據(jù)和使用express輸出json接口的實現(xiàn)方法
- vue+mockjs模擬數(shù)據(jù)實現(xiàn)前后端分離開發(fā)的實例代碼
- Node.js服務(wù)器環(huán)境下使用Mock.js攔截AJAX請求的教程
- vue-cli項目中使用Mockjs詳解
- vue+vuecli+webpack中使用mockjs模擬后端數(shù)據(jù)的示例
- Vue+Mock.js模擬登錄和表格的增刪改查功能
- Node.js測試中的Mock文件系統(tǒng)詳解
- express+mockjs實現(xiàn)模擬后臺數(shù)據(jù)發(fā)送功能
- vue+axios+mock.js環(huán)境搭建的方法步驟
- mockjs+vue頁面直接展示數(shù)據(jù)的方法
- mock.js實現(xiàn)模擬生成假數(shù)據(jù)功能示例
相關(guān)文章
微信小程序wx.uploadfile 本地文件轉(zhuǎn)base64的實現(xiàn)代碼
這篇文章主要介紹了微信小程序wx.uploadfile 本地文件轉(zhuǎn)base64的實現(xiàn)方法,文中通過代碼講解給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2018-06-06
javascript 中select框觸發(fā)事件過程的分析
這篇文章主要介紹了javascript 中select框觸發(fā)事件過程的分析的相關(guān)資料,這里對select 觸發(fā)過程進(jìn)行了深入分析,幫助大家理解這部分內(nèi)容,需要的朋友可以參考下2017-08-08
微信小程序使用slider設(shè)置數(shù)據(jù)值及switch開關(guān)組件功能【附源碼下載】
這篇文章主要介紹了微信小程序使用slider設(shè)置數(shù)據(jù)值及switch開關(guān)組件功能,結(jié)合實例形式分析了slider組件及switch組件的功能與使用方法,并附帶源碼供讀者下載參考,需要的朋友可以參考下2017-12-12
Auntion-TableSort javascript類文件
Auntion-TableSort javascript類文件...2007-11-11

