Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用py.test monkeypatch模拟os.environ_Python_Unit Testing_Monkeypatching - Fatal编程技术网

Python 如何使用py.test monkeypatch模拟os.environ

Python 如何使用py.test monkeypatch模拟os.environ,python,unit-testing,monkeypatching,Python,Unit Testing,Monkeypatching,我试图模拟os.environ,但是我得到了这个错误 monkeypatch.setattr(os, 'environ', mock_env) E TypeError: unbound method setattr() must be called with monkeypatch instance as first argument (got module instance instead) 这是我的密码 def test_feed(self):

我试图模拟os.environ,但是我得到了这个错误

       monkeypatch.setattr(os, 'environ', mock_env)
E       TypeError: unbound method setattr() must be called with monkeypatch instance as first argument (got module instance instead)
这是我的密码

 def test_feed(self):
        self.upload_file()
        def mock_env():
            return get_config()

        monkeypatch.setattr(os, 'environ', mock_env)

        response = self.app.get('/feed')

        self.assertEquals('<xml></xml>', response.data)

我相信您只是忘记了将
monkeypatch
fixture作为参数传递给测试函数:

def test_feed(self, monkeypatch):
    ...
def test_feed(self, monkeypatch):
    ...