Невозможно запустить pytests в Docker-контейнере - PullRequest
0 голосов
/ 09 апреля 2019

Я создал образ докера и попытался запустить pytest, я получаю следующую ошибку: Docker Run Docker-кит

============================= начинается тестовая сессия =============== =============== платформа linux2 - Python 2.7.16, pytest-4.4.0, py-1.8.0, pluggy-0.9.0 rootdir: / app ========================= ни один тест не был выполнен за 0.00 секунд =================== ====== ОШИБКА: файл не найден: --env preview

Мой DockerFile:

CMD ["pytest" , "--env preview" , "fe/tests/US/MyCom/MyPageTests/" , "-m preview"]

Это происходит из-за конфликта между переменной env docker и моей переменной среды env pytest? Если да, то каков обходной путь?

Эта же команда отлично работает, если я запускаю ssh в контейнер докера.

1 Ответ

0 голосов
/ 09 апреля 2019

Используемая вами форма CMD принимает список аргументов и передает их в точности так, как указано.

Вы объединили --env и preview в один аргумент --env preview, который выдаетне понимает.

Разделить их так:

CMD ["pytest", "--env", "preview" , "fe/tests/US/MyCom/MyPageTests/", "-m",  "preview"]

Нормально, если вы введете эту команду в оболочку:

pytest --env preview fe/tests/US/MyCom/MyPageTests/ -m preview

Оболочка разделиткомандную строку на пробелах, и предоставьте каждый элемент в argv.

Но в CMD нет оболочки, создающей список аргументов.Есть только докер, и он делает именно то, что вы говорите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...