Ошибка «Нет модуля с именем google.cloud» при импорте скрипта Python в тест, но не при непосредственном запуске - PullRequest
0 голосов
/ 14 мая 2019

Не уверен, что это больше связано с облаком Google или с pytest.См. Файлы ниже.

Когда я запускаю python app/my_script.py или python -m app.my_script, скрипт работает нормально.

Но когда я запускаю pytest, строка в скрипте from google.cloud import vision выбрасывает"ModuleNotFoundError: нет модуля с именем" google.cloud "".

Я безуспешно пытался добавить различные имена пакетов в файл needs.txt и / или запустить pip install google-cloud и pip install google-cloud-language с флагами --upgrade и без них.Какие шаги я могу предпринять для преодоления этой ошибки?


conftest.py: (пусто)

needs.txt:

google-cloud-vision

app / my_script.py:

from google.cloud import vision
from google.cloud.vision import types

def new_client():
    client = vision.ImageAnnotatorClient()
    return client

if __name__ == "__main__":
    client = new_client()
    # etc...

test / test_my_script.py:

from app.my_script import new_client

# tests here... 
...