这里有一个场景,我希望你能帮助我。
我在/home/k/PR-TEST/Pr/test中有python单元测试。
kahmed@qatools:~/PR-TEST/Pr-test$ ls
_apache.py archive clienttest decorators.py fakeTecoreClient.py fixtures.pyc psqlharness.py servertest testhelp.pyc testutils.pyc
apache_server.py cache commontest decorators.pyc fixtures.py mysqlharness.py runtests.sh testhelp.py testutils.py并将我实际对@ /home/k/PR/Pr运行测试的包命名为(目录名为) pref
kahmed@qatools:~/PR/Pr$ pwd
/home/kahmed/PR/Pr
kahmed@qatools:~/PR/Pr$ ls
bin conf images init.d iped logrotate.d NEWS pref rpa sbin scripts src test VERSION现在,我执行cd to ~/PR-TEST/Pr-test,然后运行:
nosetests -s --with-coverage --cover-package /home/k/PR/Pr/pref `find . -name "*test.py"`但我得到的错误是它找不到首选的软件包
你知道怎么解决这个问题吗?
我必须确保python环境知道包pr
发布于 2011-04-19 14:48:48
如果您不能(或不想)在启动程序之前修改PYTHONPATH,则可以在运行时修改sys.path以实现类似的功能。
但在这种情况下,您需要包装对nosetests脚本的调用。另外,请检查您的名为Pr vs pr的软件包是否没有区分大小写的问题。
发布于 2011-04-19 14:32:18
应将软件包的路径添加到PYTHONPATH环境变量
发布于 2011-04-19 14:51:18
您应该将应用程序包放在"foo/app“目录中,并将测试放在另一个名为"foo/ tests”的子目录中。然后从foo目录运行测试,以便它们可以直接导入app。
https://stackoverflow.com/questions/5712460
复制相似问题