내 장고 애플리케이션에 여러 TestCase 클래스가 있습니다. 그 중 일부에서는 클래스를 @ mock.patch로 장식하여 외부 리소스를 호출하는 함수를 조롱합니다. 내 테스트 스위트에있는 하나의 TestCase를 B()라고 부르 자. 외부 리소스에 따라 다르므로 내가 조롱 당하고 싶지 않고 데코레이터를 추가하지 않기를 바란다. 다음과 같이 보입니다.장고 (Django) 단위 테스트에서 조롱 된 객체 잠금 해제
@mock.patch("myapp.external_resource_function", new=mock.MagicMock)
class A(TestCase):
# tests here
class B(TestBase):
# tests here which depend on external_resource_function
내가 독립적으로 B를 테스트 할 때 예상대로 작동합니다. 그러나 두 테스트를 동시에 실행하면 A가 먼저 실행되지만 함수는 여전히 B에서 조롱을받습니다. 어떻게 호출을 숨길 수 있습니까? 모듈을 다시로드하려고 시도했지만 도움이되지 않았습니다.
감사합니다. 시작과 중지가 필요합니다. – velotron
하나의 테스트에 모의가 필요한 경우, 다른 테스트에는 모의가 필요한 경우 어떻게해야합니까? 각 단위 테스트 내에서 패치/시작/중지하는 것보다이 작업을 수행 할 수있는 다른 방법이 있습니까? – Ethereal