@Patch装饰器与pytest装置不兼容
问题描述
我在使用集成了pytest fixture的mock包中的补丁装饰器时,遇到了一些神秘的事情。
我有两个模块:
-----test folder
-------func.py
-------test_test.py
在func.py中:
def a():
return 1
def b():
return a()
在test_test.py中:
import pytest
from func import a,b
from mock import patch,Mock
@pytest.fixture(scope="module")
def brands():
return 1
mock_b=Mock()
@patch('test_test.b',mock_b)
def test_compute_scores(brands):
a()
贴片装饰似乎与最火热的夹具不兼容。有人对此有什么见解吗?谢谢
解决方案
我遇到了同样的问题,我的解决方案是在1.0.1版本中使用模拟库(在我使用2.6.0版本中的unittest.mock之前)。现在它就像一个护身符一样起作用了:)
相关文章