sarrrrry's diary

機械学習ML系の日々の色々の知見のアウトプット

unittestで同じテストを使いまわしたいときのテンプレートの書き方

import unittest
class ParentTest(unittest.TestCase):
    """
    このメソッドはパスされる
    """
    def setUp(self):
        raise unittest.SkipTest

        self.someone = None
        self.target = None

    def test_template1(self):
        """
        ほかで使いまわしたいメソッド
        :return:
        """
        self.assertEqual(self.someone, self.target)


class TestSomething(ParentTest):
    """
    -> Green
    """
    def setUp(self):
        self.someone = 1
        self.target = 1


class TestSomething2(ParentTest):
    """
    -> !!! Red !!!
    """
    def setUp(self):
        self.someone = 1
        self.target = 2

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