uv
工作区,其结构类似于文档中的以下示例。
albatross
├── packages
│ ├── bird-feeder
│ │ ├── pyproject.toml
│ │ └── src
│ │ └── bird_feeder
│ │ ├── __init__.py
│ │ └── foo.py
│ └── seeds
│ ├── pyproject.toml
│ └── src
│ └── seeds
│ ├── __init__.py
│ └── bar.py
├── pyproject.toml
├── README.md
├── uv.lock
└── src
└── albatross
└── main.py
当从根包(本例中为 albatross)目录运行
pytest
时,如何告诉 pyproject.toml
使用每个包 pytest
中的配置?
你可以告诉
pytest
目录:
uv run pytest packages/bird-feeder
uv
没有内置支持。
uv run --package bird-feeder
不会将 pyproject
或目录信息传递给 pytest
。pytest
仅仅推断 dir=pathlib.Path.cwd()
。直到
uv
支持使用uv run
作为任务运行程序#5903,使用uv
功能将会很冗长:
uv run --directory packages/bird-feeder pytest
与
--package bird-feeder
:
uv run --package bird-feeder --directory packages/bird-feeder pytest