nosetests没有在子目录中找到测试

时间:2017-09-26 15:45:50

标签: python nose

我的包

有以下结构
Project
- __init__.py
- my_mod
-- test
-- __init__.py
-- test_my_mod.py

如果我在项目文件夹中运行nosetests它找不到我的测试,但如果我在测试文件夹中运行,那么它就会把它拿起来。

任何想法可能是什么问题

1 个答案:

答案 0 :(得分:0)

删除Project目录中的__init__.py文件。看起来你不希望Project成为Python包,所以你不需要它。然后,具有此目录结构:

Project
└── my_mod
    ├── __init__.py
    ├── some_module.py
    ├── test
    │   ├── __init__.py
    │   ├── test_my_mod_again.py
    │   └── test_my_mod_yet_again.py
    └── test_my_mod.py

在Project中运行nosetests现在将在my_mod /目录内和test /目录中运行测试。

当然,测试文件的内容应该包含nosetests可以识别为测试的内容,例如:

import unittest
from my_mod import some_module

class MyTestCase(unittest.TestCase):

    def test_the_number(self):
        assert some_module.double(10) == 20