如何剖析tox?

How to profile tox?

我 运行 通过 tox 的特定测试用例:

tox -e myenv foo.tests.test_foo.SomeTestCase

这需要 30 秒。

测试本身非常简单快速。但是之前似乎发生了很多事情 测试开始 运行.

我怎样才能trace/profile考试前发生的事情运行?

我猜只分析 tox 不会有帮助,因为 tox 作用不大。 Tox 生成花费太长时间的子进程。

tox 4 打印出时间戳,因为它在通过两个冗长级别时执行作业。所以我的建议是安装 tox 4 然后做 tox -vvv r -e myenv --foo.tests.test_foo.SomeTestC.

PS。您可以做的一个很重要的事情是在 sdist 构建上启用 wheel 构建(仅在 tox 4 中受支持),因为由于需要设置隔离的构建环境,目前使用 pip 安装 sdist 非常昂贵:

[testenv]
package = wheel
# below settings only applies if you don't have a c extension
wheel_build_env = .pkg

PS。我是毒药 author/maintainer.