【Python】Calculatorクラスにみるunittest

最終更新日

加算・減算は省略。例外のテストはassertRaises()を使用する。

テスト対象クラス:

class Calculator:
    def multiply(self, x, y):
        return x * y

    def divide(self, x, y):
        if y == 0:
            raise ZeroDivisionError
        return x / y

テストクラス:

import unittest

from Calculator import Calculator


class CalculatorTestCase(unittest.TestCase):
    calculator = None

    def setUp(self):
        self.calculator = Calculator()

    def test_multiply(self):
        self.assertEqual(self.calculator.multiply(1, 2), 2)

    def test_divide(self):
        self.assertEqual(self.calculator.divide(1, 2), 0.5)

    def test_divide_zeroDivisionError(self):
        with self.assertRaises(ZeroDivisionError):
            self.calculator.divide(1, 0)


if __name__ == '__main__':
    unittest.main()

teten17340902