前言
在撰寫 bmclass 前,search 了一下 Lua 的 unittest 工具,竟有10種以上的套件任君挑選...實際都把玩過,各有各的好,但有些過於簡單,有些過於複雜,當初也是因為這樣才誕生 bmclass,所以我選了一個中庸的 LuaUnit。
資源連結
http://phil.freehackers.org/programs/luaunit/
bmclass 的使用範例
-- include bmclassclass = dofile("../bmclass.lua")-- incldue test modulerequire("luaunit")-- test startTestbmlass = {}function Testbmlass:setUp() end
function Testbmlass:tearDown() end
function Testbmlass:testCreateSimpleClass1()local cls = class("cls")
local obj = cls()function obj:__tostring() return "obj" end
assertEquals(tostring(cls), "cls")
assertEquals(tostring(obj), "obj")
end-- test endLuaUnit:run()
對我來說,其實單元測試只要有 assert 以及 setUp/tearDown 便非常足夠了,剩下的特殊例子大可另外想辦法進行測試,不需要將單元測試搞得太過複雜,當寫測試令人感到無比的負擔,這麼一來會令許多工程師打退堂鼓的。
沒有留言:
張貼留言