已安装的Nose但无法在命令行

时间:2015-09-13 04:16:13

标签: python macos python-2.7 nose

我使用easy_install在Mac OSX 10.10.5上使用Python2.7.9安装了Nose。安装似乎很成功:

Collecting nose
  Downloading nose-1.3.7-py2-none-any.whl (154kB)
    100% |████████████████████████████████| 155kB 2.3MB/s 
Installing collected packages: nose
Successfully installed nose-1.3.7

但是现在,当我在命令行上尝试使用nosetests的基本内容时,例如nosetests -hwhich nosetests我得到:

bash: nosetests: command not found

我尝试使用pip卸载,重新安装,尝试使用sudo进行安装,然后在其他帖子建议的测试脚本目录中运行sudo nostests,但似乎没有任何效果。

安装的最初目的是使用nose来运行我为这些简单的web.py应用程序编写的测试脚本进行一些基本测试。但没有任何作用,只需继续获得command not found响应。

当我在终端中打开Python解释器并做类似的事情时,有什么奇怪的呢?

import nose 
nose.main()

我得到了预期的结果:

.
----------------------------------------------------------------------
Ran 1 test in 0.135s

OK

很明显,它安装在......某个地方。关于到底发生了什么的任何建议?

8 个答案:

答案 0 :(得分:24)

在Mac OS上使用pip安装包时发生了很多错误。因此,我建议您使用nose安装easy_install

$ pip uninstall nose

$ sudo easy_install nose

然后你可以试试nosetests:)

答案 1 :(得分:10)

在类似UNIX的系统(如OS X)上,脚本位于/usr/local/bin。确保该目录位于您使用的shell中的PATH环境变量中。

如果没有,您也可以使用find找到它,例如:

find / -type f -name 'nosetests*' -perm +111 -print -quit

这意味着;搜索名称以nosetests开头的文件,该文件具有执行权限集。打印路径名称并停止。

答案 2 :(得分:10)

我在OS X EI Captain上使用Python 2.7.10确实存在这个问题。

首先我使用 pip 安装 nose

$sudo pip install nose 

第一次尝试失败。经历了第二次尝试。但是nosetests命令没有用。

为了解决这个问题:

步骤1:如果已经使用 pip 安装 nose ,请不要卸载 nose

第2步:

$cd /usr/bin

$sudo easy_install nose 

上面的命令找到nosetests脚本(之前由pip安装)&将其设置为/usr/local/bin

Step 3: Try nosetests

$nosetests

----------------------------------------------------------------------
Ran 0 tests in 0.047s

OK

答案 3 :(得分:2)

我发现要去

Library/usr/bin 

并正在运行

sudo easy_install nose
似乎有时它不会自动安装鼻子(因此鼻子测试功能)。做上面的行,你应该是好的。

我希望我能更好地解释为什么会发生这种情况,但我自己还是很新的。

答案 4 :(得分:0)

首先,你可以运行' python'从命令行? nosetests应该在同一个目录中:

rich bin $ which python
/home/rich/anaconda/bin/python
rich bin $ which nosetests
/home/rich/anaconda/bin/nosetests

它也应该在下载的鼻子包中:

rich bin $ find /home/rich/anaconda -name nosetests
/home/rich/anaconda/pkgs/nose-1.3.3-py27_0/bin/nosetests
/home/rich/anaconda/pkgs/nose-1.3.7-py27_0/bin/nosetests
/home/rich/anaconda/bin/nosetests

答案 5 :(得分:0)

据我了解,每个人都在使用pytest-一个主动维护的测试框架。

这不是解决这个问题的方法,但是如果您仍在使用 nose ,它可能是最合适的选择。

答案 6 :(得分:0)

我尝试重新安装pip,它不起作用,但是最后,当我使用sudo时...有效

  

pip3卸载鼻子

     

sudo pip3安装鼻孔

  

哪个鼻子测试

     

/ usr / local / bin / nosetests

答案 7 :(得分:0)

如果您在虚拟环境中奔跑,并且该虚拟环境已被停用,也会发生这种情况。在这种情况下,请使用source bin/activate重新激活。