Pythonのunittestでグローバル変数を扱う方法について説明します。特に、モジュールのグローバル変数にアクセスする方法と、そのテスト方法について詳しく見ていきましょう。
モジュールのグローバル変数へのアクセス
Pythonでは、モジュールのグローバル変数にアクセスするためには、モジュール名を経由してアクセスします。以下に具体的なコードを示します。
# aaa_module.py
logger = logging.getLogger('...')
# test_aaa.py
import aaa_module
class TestAAA(unittest.TestCase):
def test_aaa(self):
aaa_module.logger = logging.getLogger('...')
aaa_module.aaa_func()
このように、aaa_module.logger
という形でモジュールのグローバル変数にアクセスできます。
グローバル変数のテスト
unittestでグローバル変数をテストする際には、テスト内でグローバル変数を上書きすることが一般的です。以下に具体的なコードを示します。
# test_aaa.py
import aaa_module
class TestAAA(unittest.TestCase):
def test_aaa(self):
aaa_module.logger = logging.getLogger('...')
aaa_module.aaa_func()
このように、テスト内でグローバル変数を上書きすることで、実際の挙動を模擬することができます。
以上がPythonのunittestでグローバル変数を扱う方法になります。これらの知識を活用して、より効率的なテストコードを書くことができるでしょう。