【发布时间】:2018-09-06 17:03:19
【问题描述】:
我有一个像下面这样的目录结构
horizontalupgrade
common/
__init__.py
upgradestate.py
tests/
common/
__init__.py
testupgradestate.py
testupgradestate.py的内容
import unittest
from upgradestate import UpgradeState
class UpgradeStateTest(unittest.TestCase):
def setUp(self):
print "Setup Called"
def test_copy(self):
u = UpgradeState("")
print "test_copy Called"
if __name__ == '__main__':
suite = unittest.TestLoader().loadTestsFromTestCase(UpgradeStateTest)
runner = unittest.TextTestRunner()
runner.run(suite)
但是在尝试执行测试时,python 无法找到测试
(venv) dmanna-a01:horizontalupgrade dmanna$ python -m unittest discover -v
----------------------------------------------------------------------
Ran 0 tests in 0.000s
OK
但是,如果我将目录结构设置为如下所示
horizontalupgrade
common/
__init__.py
upgradestate.py
testupgradestate.py
然后测试运行良好
(venv) dmanna-a01:horizontalupgrade dmanna$ python -m unittest discover -v
test_copy (common.testupgradestate.UpgradeStateTest) ... Setup Called
test_copy Called
ok
----------------------------------------------------------------------
Ran 1 tests in 0.000s
OK
谁能告诉我我做错了什么?如何使测试从不同的测试包运行?
- Python - 2.7
【问题讨论】:
标签: python python-2.7 python-unittest