由于权限问题,无法在Mac上运行pytest

时间:2019-03-14 17:44:13

标签: macos pip pytest

在我使用的Mac OS 10.14(Mojave)上:

pip install -U pytest

安装pytest。我在尝试将软件包安装到/Users/nagen/Library/Python/2.7

时遇到了权限被拒绝的错误

我尝试过

sudo pip install -U pytest

这次成功安装 但是,尽管添加了完整路径,终端仍无法识别pytest。

如果我尝试运行/Users/nagen/Library/Python/2.7/bin/pytest-出现权限错误。 另外,sudo /Users/nagen/Library/Python/2.7/bin/pytest可以工作,但是会提示您输入密码,因此我不能在自动化脚本中使用它。

尝试安装python3,然后运行pip3 install ...相同的问题。

2 个答案:

答案 0 :(得分:0)

我会强烈推荐使用homebrew。这是Mac用户使用的最好的开发工具,如果没有它,我永远也不会安装。

要安装它,请在终端中运行以下命令:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

现在只需简单地安装python3:

brew install python3

brew将确保正确配置PATH,并且在运行pip3 install x时不会出现任何问题。

此外,如果您决定使用自制软件重新安装python,则需要遵循this指南以首先卸载python。这将是该过程中最繁琐的部分。

请确保您不要卸载python2软件包!您的Mac OS使用它们。如果您根本没有安装python3,则可以跳过卸载步骤,直接转到brew install python3

当我第一次开始使用python时,我遇到了同样的问题,因为我尝试从python.org手动安装它,然后遇到了自制程序,此后再也没有问题。

答案 1 :(得分:0)

我认为最好的选择可能是使用python虚拟环境。 https://packaging.python.org/guides/installing-using-pip-and-virtualenv/是一个很好的起点

> virtualenv env
> source env/bin/activate
> pip install pytest
> pytest

这将避免路径和权限问题,并保持环境清洁。您通过该venv所做的任何其他更改。