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