我有一組共享一些基本檢查的操作。我的代碼如下所示:單元測試方法包裝器
def is_valid(param): …some pretty complex things unit-tested on their own…
class BaseAction(object):
def run(self, param):
if not is_valid(param):
raise ValueError(…)
return self.do_run(param)
class Jump(BaseAction):
def do_run(self, param): …
class Sing(BaseAction):
def do_run(self, param): …
我該如何對BaseAction.run執行驗證這一事實進行單元測試?
我想我可以對Jump.run和Sing.run進行單元測試,但是爲了正確地做到這一點,我需要爲BaseAction的每個子類編寫測試,這可能是很多情況。這也意味着將子類的測試與基類的方法進行測試。
我應該爲'objectundertest'做些什麼? BaseAction()(可能是一種抽象類)?一個子類? – liori
@ liori:我擴大了一點;子類'BaseAction()'僅用於單元測試。這可以讓你專注於基類單元的孤立。 –