假设我有:
class Calculator():
def divide (self, divident, divisor):
return divident/divisor`
我想使用 Python 3.4 unittest
模块测试它的 divide 方法。
我的代码是否必须具有类的实例才能对其进行测试?即,下面的测试类需要setUp
方法:
class TestCalculator(unittest.TestCase):
def setUp(self):
self.calc = src.calculator.Calculator()
def test_divide_by_zero(self):
self.assertRaises(ZeroDivisionError, self.calc(0, 1))
最佳答案
因为它有一个self
参数,所以它是一个实例方法,所以你需要一个实例。
如果它没有self
,您可以将其设为@classmethod
或@staticmethod
,参见what's the difference .
因为您不使用 self
参数,所以它可能不是实例方法。但是您可以只使用一个函数而不使用任何类:
# calculator.py
def divide(dividend, divisor):
return dividend / divisor
关于python - 我是否需要创建一个类实例以使用 unittest 进行测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28737359/