파이썬에서 mock을 사용하면 최상위 패키지 (argparse와 같은)를 완전히 패치 할 수 없습니다. 아마도 패치에 대한 참조가 없기 때문일 수 있습니다. 한 가지 해결책은 모든 개별 호출을 패키지 (argparse.ArgumentParser와 같은)로 패치하는 것입니다. 이론 상으로는 패키지에 대한 호출이 유닛 테스트 중에 실수로 호출을 불러올 수있는 해당 패치없이 추가 된 경우파이썬 모의 패치 최상위 패키지
해결 방법이 모두 불편하지는 않지만 argparse와 같은 패키지를 완전히 패치하는 것이 이상적입니다. mock_open은 __main__.open
을 사용하여 open()
에 내장 된 것을 패치하기 위해 일부 속임수를 사용하는 것처럼 보입니다. 어떻게 작동하며 비슷한 수준의 헛소리가 최상위 패키지를 패치하는 데 사용될 수 있습니까? mock_open 패치에 관해서는