从os.environ模拟密钥

时间:2018-06-27 11:10:36

标签: python mocking

我正在尝试测试一个函数,如果该函数在os.environ中找不到特定的键,则应返回OSError,但是我不知道该如何模拟它。 我也完全可以将os.environ完全模拟为空。

with mock.patch.dict('os.environ', dict()): print(os.environ)

with mock.patch.dict(os.environ, dict()): print(os.environ)

无论如何,我都会打印整个环境。

1 个答案:

答案 0 :(得分:0)

我求助于MonkeyPatching os.environ:

old_os_environ = os.environ try: os.environ = {} self.assertRaises(OSError, my_function) finally: os.environ = old_os_environ