亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源軟件測試解決方案 > 開源測試工具組合
通過Qunit對Javascript代碼進行單元測試
作者:網絡轉載 發布時間:[ 2013/12/11 9:12:44 ] 推薦標簽:

  在現在的軟件開發中,單元測試已經變得越來越重要了.相比程序員與測試QA的手工測試,單元測試可以在項目每次build的時候集成運行,來為程序員提供Regression Test的反饋.這在敏捷開發中為程序員提供了很重要的支持,可以很容易的進行重構. 現在的主流編程語言都有很好的對單元測試的支持, 關于JUnit和NUnit的文章也已經有很多了. 在這里,我們介紹一下如何使用QUnit對Javascript腳本進行單元測試.
  在這里我們使用一個簡單的撲克的例子. 首先,我們用Javascript寫一個簡單的撲克牌類:
var Card = function(opts) {
var C = {};
C._normalizeArg = function(arg) {
if (_.isString(arg)) {
arg = arg.replace(/s+/g,'').split(",");
}
if (!_.isArray(arg)) {
arg = [arg];
}
return arg;
};
C.extend = function(obj) {
_(C).extend(obj);
return C;
};
C.CardKind = {
"Spade" : "spade",
"Heart" : "heart",
"Diamond" : "diamond",
"Club" : "club",
"Special" : "special"
};
C.CardNum = {
"Ace" : 1,
"Two" : 2,
"Three" : 3,
"Four" : 4,
"Five" : 5,
"Six" : 6,
"Seven" : 7,
"Eight" : 8,
"Nine" : 9,
"Ten" : 10,
"Jack" : 11,
"Queen" : 12,
"King" : 13,
"JokerS" : 14,
"Joker" : 15
};
C.Card = Class.extend({
init : function(kind, num) {
this.kind = kind;
this.num = num;
},
name : function() {
return this.kind + this.num;
},
isComparable : function(card) {
return this.kind == card.kind;
},
compareTo : function (card) {
if (this.isComparable(card)) {
return this.num - card.num;
}
}
});
C.Deck = Class.extend({
init : function(numOfDecks, includeJokers, jokersAreDifferent, cards) {
this.numOfDecks = numOfDecks == undefined ? 1 : numOfDecks;
this.includeJokers = includeJokers == undefined ? false : includeJokers;
this.jokersAreDifferent = jokersAreDifferent == undefined ? false : jokersAreDifferent;
this.cards = [];
this.setup(cards);
},
setup : function(cards) {
if (cards == undefined) {
var kinds = _.filter(C.CardKind, function(kind) {return kind != C.CardKind.Special; });
var nums = _.filter(C.CardNum, function(num) {return num <= C.CardNum.King; });
for (var i = 1; i <= this.numOfDecks; i++) {
for (var kind in kinds) {
for (var num in nums) {
this.cards.push(new C.Card(kinds[kind], nums[num]));
}
}
if (this.includeJokers) {
if (this.jokersAreDifferent) {
this.cards.push(new C.Card(C.CardKind.Special, C.CardNum.JokerS));
this.cards.push(new C.Card(C.CardKind.Special, C.CardNum.Joker));
} else {
this.cards.push(new C.Card(C.CardKind.Special, C.CardNum.Joker));
this.cards.push(new C.Card(C.CardKind.Special, C.CardNum.Joker));
}
}
}
}

上一頁123下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 国产在线精品制服丝袜 | 在线看mv的网站入口免费 | 国产在线高清视频 | 三级在线观看视频 | 国产97在线 | 亚洲 | 黄色大片网站在线观看 | 在线观看国产日韩 | 黑人videosex中国另类 | av av片在线看 | a级午夜理论免费毛片 | 欧美日韩国产在线人 | 亚洲国产精品第一区二区三区 | 黄网址在线 | 中文字幕一区二区三区在线观看 | 无遮挡一级毛片私人影院 | 欧美激情图区 | 日韩视频免费一区二区三区 | 99视频网址 | 永久免费看的啪啪网站 | 久久午夜影视 | 精品视频一区二区三区免费 | 日本三级免费网站 | 簧片视频在线观看 | 亚洲精品午夜aaa级久久久久 | 在线中文字幕视频 | 欧美一级精品高清在线观看 | 午夜一级影院 | caopren免费视频国产 | 殴美黄色 | 亚洲欧美日韩综合一区久久 | 曰曰碰天天碰国产 | 欧美精品一区二区三区免费观看 | 黄 色 免费网 站 成 人 | 99re这里 | 日韩 欧美 中文字幕 不卡 | 亚洲午夜在线观看 | freefr性欧美69hd| 天堂免费在线视频 | 免费日韩精品 | 亚洲综合日韩在线亚洲欧美专区 | 黄色三级国产 |