A test running with nosetests fails with ImportErr

2019-08-01 04:40发布

When run a test with python mycore/tests4extractor.py it works. If run the test with nosetests ./mycore/tests4extractor.py it fails with ImportError: No module named extractor. I am in the helpers folder.

The project structure is:

helpers/
    mycore/
        __init__.py
        extractor.py
        tests4extractor.py

Setting PYTHONPATH to the absolute path to helpers and/or helpers/mycore doesn't help.

Answer

tests4extractor.py:

    import mycore
    from extractor import extract

should be changed to:

    import mycore
    from mycore.extractor import extract

And python should be run with python -mmycore.tests4_strings

1条回答
Animai°情兽
2楼-- · 2019-08-01 05:02

Does tests4extractor.py contain import extractor?

Because mycore is a package, you need to use absolute imports:

from mycore import extractor

or relative imports:

from . import extractor
查看更多
登录 后发表回答