Mock:關(guān)注行為驗(yàn)證。細(xì)粒度的測(cè)試,即代碼的邏輯,多數(shù)情況下用于單元測(cè)試。 何時(shí)使用Mock:
Mock的優(yōu)點(diǎn):
Mock的缺點(diǎn):
Stub:關(guān)注狀態(tài)驗(yàn)證。粗粒度的測(cè)試,在某個(gè)依賴(lài)系統(tǒng)不存在或者還沒(méi)實(shí)現(xiàn)或者難以測(cè)試的情況下使用,例如訪(fǎng)問(wèn)文件系統(tǒng),數(shù)據(jù)庫(kù)連接,遠(yuǎn)程協(xié)議等。 何時(shí)用Stub:需要用到Mock或者Stub的情況,往往是測(cè)試的代碼存在依賴(lài),當(dāng)這種依賴(lài)難以實(shí)現(xiàn)或者不穩(wěn)定的時(shí)候可以考慮使用Stub策略,例如,需要測(cè)試的系統(tǒng),可能需要訪(fǎng)問(wèn)數(shù)據(jù)庫(kù),依賴(lài)于運(yùn)行環(huán)境(安全性,存儲(chǔ),Web Service),或者需要訪(fǎng)問(wèn)遠(yuǎn)程文件系統(tǒng),訪(fǎng)問(wèn)遠(yuǎn)程協(xié)議(HTTP,SOAP)等。 由于現(xiàn)存的應(yīng)用的太復(fù)雜或者過(guò)于脆弱,修改它需要大量的人天。諸如不同系統(tǒng)之間的集成測(cè)試,類(lèi)屬于粗粒度的測(cè)試皆可考慮使用Stub。 Stub的優(yōu)點(diǎn):
Stub的缺點(diǎn):
|
|
|
來(lái)自: ThinkTank_引擎 > 《測(cè)試》