Python pytest挂起“正在收集0项”,因为“uvicorn.run()`

Python pytest挂起“正在收集0项”,因为“uvicorn.run()`,python,pytest,doctest,Python,Pytest,Doctest,当tox运行命令pytest--doctest modules{envsitepackagesdir}/my_-pkg时,它将挂起收集0个项目。但是,我发现如果我注释掉my\u pkg.server.\uuu main\uuuuu.py中的uvicorn.run(app),那么pytest运行正常 import uvicorn#类型:忽略 从.\u服务器导入应用程序 从。_服务器_配置导入配置 uvicorn.run(应用程序) 我认为问题在于,doctest实际上正在尝试执行代码,因此它会等

tox
运行命令
pytest--doctest modules{envsitepackagesdir}/my_-pkg
时,它将挂起
收集0个项目
。但是,我发现如果我注释掉
my\u pkg.server.\uuu main\uuuuu.py
中的
uvicorn.run(app)
,那么
pytest
运行正常

import uvicorn#类型:忽略
从.\u服务器导入应用程序
从。_服务器_配置导入配置
uvicorn.run(应用程序)
我认为问题在于,
doctest
实际上正在尝试执行代码,因此它会等待服务器进程完成,当然它从来不会这样做。我尝试添加参数
--ignore glob=“src/my\u pkg/server/\uu\u main\uuuuuu.py”
,但这并没有改变行为。如何保护此代码不受
pytest
/
doctest
的影响,使其不会尝试执行它