弄清楚为什么这么慢?我想使用 line_profiler 分析我的示例生成。
但是,我无法让它工作。这是我尝试过的:
kernprof -m pytest -n 3 tests/test_conv.py --hypothesis-profile default
pytest -m line_profiler -n 3 tests/test_conv.py --hypothesis-profile default
python3 -m line_profiler -m pytest -n 3 tests/test_conv.py --hypothesis-profile default
- https://pypi.org/project/pytest-line-profiler/
这些都没有奏效。前三个立即失败,要么不知道,要么不知道@profile
pytest 或 line_profiler IIRC。
如何让这三个人一起合作?我对 Nr 寄予厚望。4,但是它的文档指出您可能需要注释您的测试函数:
@pytest.mark.line_profile.with_args(f, g)
但是我的参数是由假设提供的,所以我尝试了
@pytest.mark.line_profile
什么也没做。
我还尝试了使用命令行的替代方法:
pytest --line-profile path.to.function_to_be profiled [...]
但是,我无法弄清楚path.to.function_to_be profiled
我的情况是什么。我的测试函数位于tests/test_conv.py
并命名为test_padding
. 然而,既不
pytest -n auto --line-profile test_padding tests/test_conv.py --hypothesis-profile default
也不
pytest -n auto --line-profile test_conv.test_padding tests/test_conv.py --hypothesis-profile default
工作。两个错误都说他们找不到那个功能。
因此我问:如何?
安装的是(通过 pip):
pytest
pytest-xdist[psutil]
hypothesis
line_profiler
pytest-line-profiler