2017-10-29 10 views
0

私は1つのクラスBaseTestを持ち、すべてのテストはそれから拡張されています。 テストはさまざまなモジュールとパッケージにあります。 setUpClassメソッドとtearDownClassメソッドは、各unittest.TestCaseクラスの前に実行されます。 setUpとtearDownは一度しか実行できません。すべてのテストの前後。すべてのunittest.TestCaseクラスに対してtearDownおよびsetUpメソッドを実行するにはどうすればいいですか

これはコードの例である:

import unittest 

class BaseTest(unittest.TestCase): 
    @classmethod 
    def setUpClass(cls): 
     print("setUpClass") 

    @classmethod 
    def tearDownClass(cls): 
     print("tearDownClass") 

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

module2.py:

class TestOne(BaseTest): 
    def test_one(self): 
     print("Test One") 

class TestTwo(BaseTest): 
    def test_two(self): 
     print("Test Two") 

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

module3.py

class TestThree(BaseTest): 
    def test_three(self): 
     print("Test Three") 


class TestFour(BaseTest): 
    def test_four(self): 
     print("Test Four") 

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

module4.py

class TestFive(BaseTest): 
    def test_five(self): 
     print("Test Five") 

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

答えて

1

私はunittestがユニバーサルセットアップとティアダウンのための機能を持っているとは思わない。あなたはpytestを見なければならない、その備品はより強力です。

関連する問題