我愉快地写作和对我工作的API测试模块,并且使用命令:为什么单元测试不能找到我的tests.py?
python -m unittest myAPI.tests.APITests.test_mod_to_test
正如预期的那样我的测试住在tests.py
模块myAPI
英寸这工作很好,我发现我不得不重构我的api.py
文件中包含我正在测试的函数的一些代码。我改变了我需要改变的东西,然后返回到我的命令行,并通过在键盘上按下来运行完全相同的命令来保存输入。我得到这个错误:
AttributeError: 'module' object has no attribute 'tests'
当我甚至没有改变目录或tests.py
中的任何东西。我没有移动的文件或更改命令,我可以使用导入tests.py
文件在Python外壳:
from myAPI import tests
在此之后我进入:
print tests
和输出是什么预计:
<module 'myAPI.tests' from '/path/to/myAPI/tests.pyc'>
我在一个virtualenv中使用python 2.7没有真正安装它。该应用程序是为Django的1.2.1应用程序,但没有关系,因为我没有在我的测试过程中触摸django(除了它是安装在我的环境中)。
这是困扰我,我想它是如何从伟大的工作,而不是没有我改变目录或tests.py一些。任何帮助是非常感谢。