Relative imports with unittest in Python

前端 未结 3 1546
忘了有多久
忘了有多久 2020-12-30 19:32

I am trying to use Python unittest and relative imports, and I can\'t seem to figure it out. I know there are a lot of related questions, but none of them have helped so fa

3条回答
  •  暖寄归人
    2020-12-30 19:48

    In my experience it is easiest if your project root is not a package, like so:

    project/
      test.py
      run.py
      package/
        __init__.py
        main_program.py
        lib/
          __init__.py
          lib_a
          lib_b
        tests/
          __init__.py
          test_a
          test_b
    

    However, as of python 3.2 , the unittest module provides the -t option, which lets you set the top level directory, so you could do (from package/):

    python -m unittest discover -t ..
    

    More details at the unittest docs.

提交回复
热议问题