如何使用每个包 pyproject.toml 配置而不是顶级 pyproject.toml 运行测试?

问题描述 投票:0回答:1

我正在使用

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
中的配置?

python pytest uv
1个回答
0
投票

你可以告诉

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
© www.soinside.com 2019 - 2024. All rights reserved.