在虚拟环境中使用nose的问题

47 投票
9 回答
14700 浏览
提问于 2025-04-15 11:35

我在一个虚拟环境的项目中无法使用nose(nosetests)——它似乎找不到在虚拟环境中安装的包。

奇怪的是,我可以在

test_suite = 'nose.collector'

的setup.py文件中设置,然后以

python setup.py test

的方式运行测试,结果都很好,但直接运行nosetests时,就出现了各种导入错误。

我尝试过在系统范围内安装nose和在虚拟环境中安装nose包,但都没有成功。

有什么想法吗?

谢谢!!

9 个回答

12

在同样的情况下,我需要重新加载 virtualenv,这样路径才能正确更新:

deactivate
env/bin/activate
63

你需要在虚拟环境中安装一个nose的副本。即使它已经在全局的包里安装了,你也可以强制在虚拟环境中安装nose。只需在运行 pip install 时加上 -I 这个标志:

(env1)$ pip install nose -I

从那以后,你就可以像往常一样运行 nosetests 了。

45

你能运行 myenv/bin/python /usr/bin/nosetests 吗?这样可以用虚拟环境里的库来运行 Nose。

撰写回答