Pytest 抛出'attempted relative import beyond top-level package'



我知道这个问题以前有人问过,但我似乎找不到解决办法。

这是我的文件夹结构:
folder_name/
__init__.py
start.py
src/
__init__.py
app.py
api.py

tests/
__init__.py
thetest.py

Start.py:

from src.app import create_app
app = create_app()
if __name__ == '__main__':
app.run(host='0.0.0.0', debug=True)

App.py:

def create_app():
app = Flask(__name__)
return app

Api.py:这里是所有端点

我的服务器工作正常

然而,当我把pytest引入方程时,它失败了。

我用这一行:从. .开始导入应用程序进口pytest

,我得到这个错误。

我试着把这些行放在thetest.py的开头:

import os
import sys
sys.path.append(os.getcwd())

但是错误仍然存在。

也许您可以尝试使用unittest进行测试:

cd "folder_name/../" # ! outside folder_name !
python3 -m unittest discover --top-level-directory=. --start-directory=./tests

是这样的:thetest.py文件内部:

from start import app

相关内容

最新更新