这取决于您要使用哪个测试运行程序。
pytest
我最近学会了喜欢pytest。
它有一个关于如何组织代码的部分。
如果您无法将 main 导入代码中,则可以使用以下技巧。
单元测试
当我使用时,unittest
我会这样做:
带进口主体
Problem
App
main.py
Tests
test_main.py
test_main.py
import sys
import os
import unittest
sys.path.append(os.path.join(os.path.dirname(__file__), 'App'))
import main
# do the tests
if __name__ == '__main__':
unittest.run()
或使用 import App.main
Problem
App
__init__.py
main.py
Tests
test.py
test_main.py
test.py
import sys
import os
import unittest
sys.path.append(os.path.dirname(__file__))
test_main.py
from test import *
import App.main
# do the tests
if __name__ == '__main__':
unittest.run()