首先將
eunit.hrl
包含進檔案
-include_lib("eunit/include/eunit.hrl").
檔案中以
_test()
結尾的函式為實際的測試函式
(eunit
會依次執行這些函式),以
_test_()
結尾的函式為測試生成函式,用來生成實際的測試函式,通常測試生成函式會返回乙個描述測試函式的列表。 禁用
eunit:
erlc -dnotest my_module.erl
-define(notest,true).
要在-include_lib("eunit/include/eunit.hrl").之前
啟用eunit:
erlc -dtest my_module.erl
巨集:_test(expr)
用expr
生成測試函式,相當於
assert(boolexpr)
assertnot(boolexpr)
assertmatch(guardpattern,expr)
assertequal(expect,expr)
assertexception(classpattern,termpattern,expr)
asserterror(termpattern,expr)
assertexit(termpattern,expr)
assertthrow(termpattern,expr)
這些巨集在失敗時通常會丟擲乙個異常。在這些巨集的前面加
_所生成的巨集(如
_assert())
用來生成測試函式。
theasserterror, assertexit, and assertthrow macros, are equivalent to using assertexception with a classpattern of error,exit, or throw, respectively.
debughere
debugmsg(text)
debugfmt(fmtstring,args)
debugval(expr)
debugtime(text,expr)
這些巨集會直接在
console
輸出資訊
eunit captures standard output
, which make it much ******r. fi
xtures:setup and cleanup
setup
函式的返回值會傳到
cleanup
函式中。
上述**段在執行
test case
時先執行
setup
函式,測試執行完後再執行
cleanup
函式,
使用EUnit進行單元測試
為了寫乙個好的產品,必定離不開完善的 測試。最近開始籌畫專案,因此 單元測試必不可少,一定要在開始的時候把測試做好,從下到上才能讓產品更加堅固。我們選擇使用eunit進行單元測試。使用eunit的好處 減少 的修改 提高開發速度 有利於介面與實現分離 有利於系統整合 還有測試本身可以作為一種文件。2...
學習筆記 雜湊學習筆記
hash基本原理 hash就是乙個像函式一樣的東西,你放進去乙個值,它給你輸出來乙個值。輸出的值就是hash值。一般hash值會比原來的值更好儲存 更小 或比較。那字串hash就非常好理解了。就是把字串轉換成乙個整數的函式。而且要盡量做到使字串對應唯一的hash值。它的主要思路是選取恰當的進製,可以...
學習筆記 CentOS 學習筆記01
簡單的做個課堂筆記 虛擬機器用的是vmware,系統是centos cd etc sysconfig network scripts pwdls 顯示列表 cat ifcfg eth0 檢視檔案內容 vi ifcfg eth0 進入vi編輯器 onboot no 原始設定 x逐字刪除 d刪除整行 a...