【发布时间】:2013-02-26 08:40:22
【问题描述】:
我想将我的应用程序的文件放在/Files 文件夹下,而将测试单元放在/UnitTests 中,这样我就可以清楚地将应用程序和测试分开。
为了能够使用与 mainApp.py 相同的模块路由,我在根文件夹中创建了一个 testController.py。
mainApp.py
testController.py
Files
|__init__.py
|Controllers
| blabla.py
| ...
UnitTests
|__init__.py
|test_something.py
因此,如果在 test_something.py 中我想测试 /Files/Controllers/blabla.py 中的一个函数,我尝试以下操作:
import unittest
import Files.Controllers.blabla as blabla
class TestMyUnit(unittest.TestCase):
def test_stupid(self):
self.assertTrue(blabla.some_function())
if __name__ == '__main__':
unittest.main()
然后从文件 testController.py 中,我执行以下代码:
import TestUnits.test_something as my_test
my_test.unittest.main()
输出没有失败,但没有执行测试
----------------------------------------------------------------------
Ran 0 tests in 0.000s
OK
[Finished in 0.3s]
我尝试了一个没有依赖关系的测试,如果执行为“main”有效,但从外部调用时,输出相同:
import unittest
def tested_unit():
return True
class TestMyUnit(unittest.TestCase):
def test_stupid(self):
self.assertTrue(tested_unit())
if __name__ == '__main__':
unittest.main()
问题:我如何让它发挥作用?
【问题讨论】:
标签: python unit-testing module tdd