2017-01-17 5 views
0

Недавно я обновил свой Mac от Mac OSX El Capitan до macOS Sierra (10.12.1). pytest(link) работает просто отлично в предыдущей версии El Capitan, но теперь он выдает следующее сообщение об ошибке с проверкой версии:Pytest не работает с обновлением до MacOS Sierra

$ python3 pytest --version 
/Library/Frameworks/Python.framework/Versions/3.5/Resources/Python.app/Contents/MacOS/Python: can't open file 'pytest': [Errno 2] No such file or directory 

я понял pytest мог бы затерялся в обновлении. Итак, я попытался установить его снова:

$ pip3 install -U pytest  
Requirement already up-to-date: pytest in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages 
Requirement already up-to-date: py>=1.4.29 in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from pytest) 

Heck, я даже удалил его и установил его снова (через pip3). Нет.

Теперь мне никогда не приходилось добавлять путь для модулей python к моему .bash_profile (или в моем случае, мой .zshrc). Чтобы было ясно, хотя, Python уже обновил свой .zprofile с

# Setting PATH for Python 3.5 
# The original version is saved in .zprofile.pysave 
PATH="/Library/Frameworks/Python.framework/Versions/3.5/bin:${PATH}" 
export PATH 

Для полноты

$ which python3 
/usr/local/bin/python3 

$ echo $SHELL 
/bin/zsh 

echo $PATH 
[...clipped...]:/usr/local/bin:[...clipped...] 

Я в недоумении здесь. Если .zprofile имеет правильный путь для пакетов, почему не работает pytest? Кто-нибудь знает, как получить pytest, работающий с macOS Sierra?

Примечание: Я посмотрел на Google и так, и я не мог найти вопрос, который помог.

EDIT:

Я забыл упомянуть в исходное сообщение, что стандарт не работает, потому что я использую две версии питона

$ pytest --version 
zsh: command not found: pytest 

ответ

0

Конечно. Вскоре после того, как я разместил вопрос, я вспомнил, что pytest потребности быть вызван с -m флагом (через python3) для модулей:

$ python3 -m pytest --version 
This is pytest version 3.0.5, imported from /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pytest.py 
0

Правильный вызов просто

pytest --version 

Не python3 pytest --version как у вас.

+0

Спасибо за ваш ответ. «Правильный» вызов не работает, если у вас есть 2 версии python в корне. 'pytest --version' =' zsh: команда не найдена: pytest' (добавлен в вопрос) – Geoff

Смежные вопросы