如何做區(qū)塊鏈項目測試?

區(qū)塊鏈技術(shù)最近熱的發(fā)紫塔粒,大多數(shù)的文章都在普及區(qū)塊鏈概念结借。區(qū)塊鏈可能會成為未來10年互聯(lián)應(yīng)用的一個底層技術(shù),會應(yīng)用于各行各業(yè)的各種項目卒茬。比如:商品溯源船老,傳統(tǒng)溯源系統(tǒng)采用集中數(shù)據(jù)存儲數(shù)據(jù),其實這樣的數(shù)據(jù)對持有者來說扬虚,想怎么修改努隙,就怎么修改,那它的數(shù)據(jù)可信度有多少辜昵?之前甚至出現(xiàn)過某銀行儲戶的資金不翼而飛的情況荸镊。既然區(qū)塊鏈會易用到各種系統(tǒng),QA同學(xué)當(dāng)然有必要了解下區(qū)塊鏈該怎么測了堪置。小編結(jié)合實際整理了下區(qū)塊鏈測試相關(guān)內(nèi)容躬存,一起來看看吧

背景

 區(qū)塊鏈的特性回顧:

● 去中介化/中心化的信任。

● 穩(wěn)定性舀锨、可靠性岭洲、持續(xù)性。因為它是一個分布式的網(wǎng)絡(luò)架構(gòu)坎匿,沒有一個中心節(jié)點可以被打擊或者攻擊盾剩,所以在整體的技術(shù)布置方面有著更強的穩(wěn)定性、可靠性和持續(xù)性替蔬。

● 強安全告私、共識機制不需要第三方的進入,而是通過一個技術(shù)來達到承桥,先前預(yù)定的一個技術(shù)來達到整個交易的完成驻粟。

● 交易的公開透明和不可篡改性。

簡單概括:去中心化凶异,不可篡改蜀撑、所有節(jié)點公開全賬本、賬戶信息持續(xù)可追蹤剩彬、對等網(wǎng)絡(luò)酷麦,沒有上帝角色(系統(tǒng)管理員等)。

技術(shù)儲備

一喉恋、區(qū)塊鏈測試的難點

區(qū)塊鏈測試與傳統(tǒng)的軟件測試有很大的不同,主要體現(xiàn)在以下幾點:

系統(tǒng)邊界模糊
傳統(tǒng)的軟件沃饶,不管是是獨立的應(yīng)用程序粪摘,還是客戶端/服務(wù)器模式的應(yīng)用程序,都有明顯的系統(tǒng)邊界绍坝,可以通過UI用戶界面或者客戶端去進行測試徘意。區(qū)塊鏈底層,則是一個完全去中心化的分布式網(wǎng)絡(luò)轩褐。這個網(wǎng)絡(luò)有可能跨越多個子網(wǎng)椎咧、多個數(shù)據(jù)中心、多個運營商把介、甚至多個國家勤讽,其邊界是模糊的。對于區(qū)塊鏈底層的測試拗踢,不僅僅是前端API與某個區(qū)塊鏈節(jié)點之間的測試脚牍,還涉及大量區(qū)塊鏈節(jié)點與節(jié)點之間的測試。

●故障類型復(fù)雜
一般軟件故障包括3類:
 a.宕機故障(Crash Failure)巢墅;
 b.宕機-恢復(fù)故障 (Crash-Recovery Failures)诸狭;
 c.拜占庭故障 (Byzantine Failures)。
所謂拜占庭故障君纫,來自一個著名的“拜占庭將軍問題”驯遇,指系統(tǒng)存在某些惡意節(jié)點,用一個形象的比喻就是“叛變的Byzantine將軍”蓄髓。從不同觀察者角度看這類節(jié)點叉庐,表現(xiàn)出不一致的癥狀,這在需要共識的系統(tǒng)中会喝,往往會導(dǎo)致系統(tǒng)服務(wù)失效陡叠。

一般軟件最多只需要解決前兩種故障,而區(qū)塊鏈系統(tǒng)肢执,則需要同時處理所 有的故障枉阵,確保系統(tǒng)的可靠運行。

區(qū)塊鏈類型不同
區(qū)塊鏈本身包含公有鏈蔚万、私有鏈岭妖、聯(lián)盟鏈等多種類型临庇,不同類型在管理反璃、用戶身份、最大節(jié)點數(shù)等平臺自身特征方面均有不同假夺,測評需要考慮所有的模式淮蜈,導(dǎo)致測試方案更加復(fù)雜。(如下表)

二已卷、測試點的考量

根據(jù)目前行業(yè)發(fā)布的白皮書梧田,區(qū)塊鏈的評測標(biāo)準(zhǔn)包括:

技術(shù)要求

區(qū)塊鏈相關(guān)的落地系統(tǒng),也可能包括我們熟悉的傳統(tǒng)架構(gòu)軟件的測試內(nèi)容。比如之前某些廠商的帶寬共享裁眯、共享云鹉梨,也會有獨立的APP支持在線查詢管理等;對于區(qū)塊鏈底層的測試穿稳,則需要掌握的技術(shù)包括如下幾點:

1.首先要掌握密碼學(xué)的基本知識(例如對稱加密存皂、非對稱加密、數(shù)字簽名的原理)逢艘;

2.理解數(shù)據(jù)結(jié)構(gòu)中的鏈表概念旦袋,樹的概念;

3.區(qū)塊鏈的交易記賬模型(如何實現(xiàn)轉(zhuǎn)賬的它改,如何避免雙花的疤孕,如何實現(xiàn)所有權(quán)驗證的);

4.若是基于以太坊代碼做央拖,那還得理解虛擬機運行原理祭阀;

區(qū)塊鏈項目重點測試如下內(nèi)容:

1.轉(zhuǎn)賬,向單/多簽名地址轉(zhuǎn)賬鲜戒,向腳本轉(zhuǎn)賬柬讨;

2.如果對幣的機制有修改,雙花攻擊測試袍啡;

3.智能合約功能及安全測試踩官;

4.打包及交易確認效率。

其實境输,任何軟件的測試蔗牡,都是可以基于“輸入-輸出-行為”模型(又叫IBO模型)來做測試分析和設(shè)計。

業(yè)務(wù)場景及性能測試

一嗅剖、 業(yè)務(wù)場景

我們以金融業(yè)務(wù)為例辩越,通常分為實施業(yè)務(wù)、和非實時業(yè)務(wù)信粮,兩種業(yè)務(wù)的特點在于:

1.實時業(yè)務(wù):秒級支付黔攒、私有鏈、無單點故障和高擴展性强缘;

2.非實時業(yè)務(wù):去中心化督惰、聯(lián)盟鏈、防篡改旅掂、數(shù)據(jù)零丟失赏胚;

具體如下圖:

 二、關(guān)于性能測試的一些思考

對于性能評測部分商虐,主要關(guān)注一下4個指標(biāo):

對于不同的性能指標(biāo)觉阅,幾點思考:

●延遲:P2P系統(tǒng)中都是虛擬鏈接崖疤,實際路由可能每次都不一樣。

●共識率:系統(tǒng)中設(shè)定一些節(jié)點典勇,故意篡改釋放假數(shù)據(jù)劫哼,看是否成功。

●吞吐率:檢查礦工的效率割笙,即整個系統(tǒng)每秒的有效交易數(shù)沦偎。

●目前性能評測中,常見的是脫離網(wǎng)絡(luò)規(guī)模和區(qū)塊大小談每秒交易數(shù)(TPS)

a.實際中咳蔚,網(wǎng)絡(luò)規(guī)模越大豪嚎,需要達成共識的節(jié)點越多,達成共識的進度谈火,越慢侈询,吞吐量(TPS)就越低;

b.區(qū)塊越大糯耍,可擴展性越大扔字,吞吐量可能發(fā)生抖動,大概率是變低温技。

結(jié)束語

目前對于區(qū)塊鏈的測試內(nèi)容上革为,短期還會出現(xiàn)針對不同行業(yè)的差異性,但最終會走向融合和統(tǒng)一舵鳞。測試手段上震檩,也將隨著時間逐步由人工測試,轉(zhuǎn)向自動化測試蜓堕,有周邊的功能深入到底層抛虏。

本文轉(zhuǎn)摘自51testiong

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市套才,隨后出現(xiàn)的幾起案子迂猴,更是在濱河造成了極大的恐慌,老刑警劉巖背伴,帶你破解...
    沈念sama閱讀 222,807評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件沸毁,死亡現(xiàn)場離奇詭異,居然都是意外死亡傻寂,警方通過查閱死者的電腦和手機息尺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,284評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來崎逃,“玉大人掷倔,你說我怎么就攤上這事眉孩「錾埽” “怎么了勒葱?”我有些...
    開封第一講書人閱讀 169,589評論 0 363
  • 文/不壞的土叔 我叫張陵,是天一觀的道長巴柿。 經(jīng)常有香客問我凛虽,道長,這世上最難降的妖魔是什么广恢? 我笑而不...
    開封第一講書人閱讀 60,188評論 1 300
  • 正文 為了忘掉前任凯旋,我火速辦了婚禮,結(jié)果婚禮上钉迷,老公的妹妹穿的比我還像新娘至非。我一直安慰自己,他們只是感情好糠聪,可當(dāng)我...
    茶點故事閱讀 69,185評論 6 398
  • 文/花漫 我一把揭開白布荒椭。 她就那樣靜靜地躺著,像睡著了一般舰蟆。 火紅的嫁衣襯著肌膚如雪趣惠。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,785評論 1 314
  • 那天身害,我揣著相機與錄音味悄,去河邊找鬼。 笑死塌鸯,一個胖子當(dāng)著我的面吹牛侍瑟,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播丙猬,決...
    沈念sama閱讀 41,220評論 3 423
  • 文/蒼蘭香墨 我猛地睜開眼丢习,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了淮悼?” 一聲冷哼從身側(cè)響起咐低,我...
    開封第一講書人閱讀 40,167評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎袜腥,沒想到半個月后见擦,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,698評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡羹令,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,767評論 3 343
  • 正文 我和宋清朗相戀三年鲤屡,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片福侈。...
    茶點故事閱讀 40,912評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡酒来,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出肪凛,到底是詐尸還是另有隱情堰汉,我是刑警寧澤辽社,帶...
    沈念sama閱讀 36,572評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站翘鸭,受9級特大地震影響滴铅,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜就乓,卻給世界環(huán)境...
    茶點故事閱讀 42,254評論 3 336
  • 文/蒙蒙 一汉匙、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧生蚁,春花似錦噩翠、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,746評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至尼摹,卻和暖如春见芹,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蠢涝。 一陣腳步聲響...
    開封第一講書人閱讀 33,859評論 1 274
  • 我被黑心中介騙來泰國打工玄呛, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人和二。 一個月前我還...
    沈念sama閱讀 49,359評論 3 379
  • 正文 我出身青樓徘铝,卻偏偏與公主長得像,于是被迫代替她去往敵國和親惯吕。 傳聞我的和親對象是個殘疾皇子惕它,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,922評論 2 361

推薦閱讀更多精彩內(nèi)容

  • 巴比特旗下時戳資本近日發(fā)布了《區(qū)塊鏈公鏈項目研究報告》。作為時戳資本區(qū)塊鏈行業(yè)研究報告系列03废登,這份最新的報告主要...
    shenciyou閱讀 2,360評論 1 10
  • '''string="hello" %s打印時結(jié)果是hello print "string=%s" % strin...
    西木春風(fēng)閱讀 122評論 0 0
  • 有時淹魄,我會害怕。蟑螂從腳邊爬過會害怕堡距〖孜看了恐怖電影后一個人留在家里會害怕。招惹了學(xué)校里張牙爪舞的女孩會害怕羽戒。但我最...
    上邪_閱讀 377評論 0 0
  • 我一直是對過山車類的項目是敬而遠之的缤沦。最早可以追溯到小學(xué)的時候去北京的一個樂園玩,看到過山車呼嘯著從頭頂飛過易稠,直接...
    William孫筱奇閱讀 1,372評論 0 0
  • 宋軍結(jié)婚以后缸废,就開了一個移動通訊店,賣手機,手機配件企量,貼膜等测萎,也給人充話費,小兩口經(jīng)營了2年多梁钾,也算穩(wěn)定下來绳泉,壓力...
    一直成長的蘋果樹閱讀 196評論 0 0