2024-09-30 02:22:30 发布
网友
假设我有:
class Calculator(): def divide (self, divident, divisor): return divident/divisor`
我想用python3.4unittest模块测试其divide方法。在
unittest
我的代码必须有类的实例化才能测试它吗?即,是以下测试类中所需的setUp方法:
setUp
是的,你知道。您是为每个测试用例重新实例化类,还是在安装过程中只实例化一次,这取决于您是否需要为每个测试提供一个新的类实例(例如,因为您的类携带大量内部状态)。在
因为它有一个self参数,所以它是一个实例方法,所以您需要一个实例。在
self
如果它没有self,你可以把它变成@classmethod或@staticmethod,见{a1}。在
@classmethod
@staticmethod
由于不使用self参数,它可能不应该是实例方法。但是你可以只使用一个函数而不使用类:
# calculator.py def divide(dividend, divisor): return dividend / divisor
是的,你知道。您是为每个测试用例重新实例化类,还是在安装过程中只实例化一次,这取决于您是否需要为每个测试提供一个新的类实例(例如,因为您的类携带大量内部状态)。在
因为它有一个
self
参数,所以它是一个实例方法,所以您需要一个实例。在如果它没有
self
,你可以把它变成@classmethod
或@staticmethod
,见{a1}。在由于不使用
self
参数,它可能不应该是实例方法。但是你可以只使用一个函数而不使用类:相关问题 更多 >
编程相关推荐