我有一组共享一些基本检查的操作。我的代码如下所示:
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 的每个子类编写测试,可能有很多情况。这也意味着对子类的耦合测试与基类方法的测试。