首先定義乙個clock
介面。並為clock
,顧名思義其實就是實現了clock
的ntpclock
,另乙個是systemclock
,它就提供系統當前時間作為標準時間。
packageshannon.demo;
/**
*
clock
isan
inte***ce
forall
theclock
toprovide
time. *
@author
shannon
qian */
publicinte***ceclock
同時,我們定義乙個unittestfirewall
類,維護乙個debugging
標記。並提供乙個getclock()
類工廠方法,返回clock
物件。
packageshannon.demo;
importthirdparty.any.ntpclock;
/**
*
unittestfirewall
isthe
facilityto
*ease
unit
test *
@author
shannon
qian */
publicfinalclassunittestfirewall
/**sets
debugging
flag
astrue
ifit's
time
tounit
test. *
@paramon-
thedebugging
toset,
true
foron
andfalse *
foroff */
publicstaticvoidsetdebugging(booleanon)
privatefinalstaticntpclock
_ntpclock
=newntpclock();
privatestaticclas******mentsclock }
privatestaticclasssystemclockimplementsclock }
privatestaticsystemclock
sysclock
=null;
privatestatic
ntpclock
= null;
/**returns
theclock
instance
for
systemtimesynchronizer *
's
invocation. *
@return
-clock
instance */
publicstaticclock getclock()
else}
} (未完待續)
單元測試 二 樁物件
在單元測試時,難免會碰到一些外部依賴,外部依賴是指在系統中 與其互動的物件,而且無法對其做人為控制,比如檔案系統 執行緒 記憶體 時間 資料庫結果集等,這時可以使用偽物件 fake 來替代外部依賴,樁物件 stub 便是其中之一 一 樁物件 a 樁物件是對系統中現有依賴項的乙個替代品,可人為控制。通...
單元測試 二 樁物件
在單元測試時,難免會碰到一些外部依賴,外部依賴是指在系統中 與其互動的物件,而且無法對其做人為控制,比如檔案系統 執行緒 記憶體 時間 資料庫結果集等,這時可以使用偽物件 fake 來替代外部依賴,樁物件 stub 便是其中之一 一 樁物件 a 樁物件是對系統中現有依賴項的乙個替代品,可人為控制。通...
單元測試關於樁函式的探索
背景 c語言編寫的目標檔案,在做單元測試的時候,在目標c檔案 如target.c 中想測試乙個函式a,而a呼叫了b,b目前無法實現,所以需要打樁來代替b.在不改變target.c的前提下 不修改程式的 在另外的c檔案中 test.c 寫樁函式,怎樣讓a函式執行的時候呼叫樁函式,而不是原來的b函式呢?...