Я знаю, как исправить мои методы:Python тесты. Метод заплаты из библиотеки в venv
@patch('common.connections.upload_image')
def test_upload(self, mocked_upload_image):
mocked_upload_image.return_value = 'Mocked url'
Это исправит мой метод upload_image
в модуле connections
в папке common
(Я использую Django, папка common
лежит в корне).
Но я хочу, чтобы залатать сериалайзер из рамок Джанго отдыха, которая находится в venv.lib.python2.7.site-packages.rest_framework.serializers.BaseSerializer.is_valid
Так что я пробовал:
@patch('venv.lib.python2.7.site-packages.rest_framework.serializers.BaseSerializer.is_valid')
def test_upload(self, mocked_is_valid):
mocked_is_valid.return_value = True # this doesn't work
Но это не работает. Говорит ImportError: No module named venv
. Моя папка venv
находится в той же папке, где находится вышеупомянутый common
.
Итак, как исправить этот метод библиотеки?
Вы можете исправить его от rest_framework.serializers.BaseSerializer.is_valid и вы можете оставить путь от вашего virtualenv в библиотеку из. – Nrzonline