执行poetry new未生成Python测试文件,Poetry行为是否已变更?
问题解答
是的,Poetry的项目初始化行为在1.2.0版本后确实发生了变更,这正是你遇到和教程不一致的原因:
- 测试文件生成逻辑变更:1.2.0之前的版本,执行
poetry new rp-poetry会在tests目录下自动生成test_rp_poetry.py文件;1.2.0及以后的版本,改为遵循pytest的默认目录规范,仅创建空的tests目录和tests/__init__.py,不再自动生成具体的测试文件。 __init__.py内容变更:旧版本会在项目根目录的rp_poetry/__init__.py中自动写入版本号(如__version__ = "0.1.0");新版本则默认生成空的__init__.py,版本信息统一存放在pyproject.toml的[tool.poetry]区块中。
如果需要和教程的行为完全一致,有两种方式:
- 使用
--legacy参数初始化项目:poetry new --legacy rp-poetry - 安装1.2.0之前的Poetry版本(比如1.1.15):
pip install poetry==1.1.15
不过更建议适应新版本的结构,手动在tests目录下创建test_rp_poetry.py即可,版本号也可以根据需要手动添加到__init__.py中。
内容的提问来源于stack exchange,提问作者KansaiRobot
相关产品推荐
相关产品推荐

