为什么测试要求指定 --tx

经过多次成功的测试后,pytest突然抛出这个错误:


$ pytest -vvv -x --internal --oclint -n -32

============================= test session starts ==============================

platform darwin -- Python 3.7.7, pytest-5.4.1, py-1.7.0, pluggy-0.13.1 -- /usr/local/opt/python/bin/python3.7

cachedir: .pytest_cache

rootdir: /Users/pre-commit-hooks/code/pre-commit-hooks, inifile: pytest.ini

plugins: xdist-1.31.0, forked-1.1.3

ERROR: MISSING test execution (tx) nodes: please specify --tx

这是我的测试.ini:


[pytest]

markers =

    oclint: marks tests as slow (deselect with '-m "not slow"')

    internal: marks tests as checking internal components. Use this if you are developing hooks

-n #来自派斯特-xdist,这是派斯特的插件。这对我来说很奇怪,因为在travis Linux版本上进行pytest工作得很好,直到最后一次迭代。


问题

为什么 pytest 要求我为我的测试添加?--tx


慕后森
浏览 97回答 2
2回答

慕尼黑的夜晚无繁华

我得到了同样的错误,但出于不同的原因。我已经设置了,但没有指定。设置该选项修复了错误。pytest-xdist--forked --dist=loadfile--numprocesses

哔哔one

如果你用手指在 -n 个数字(如 )之后用破折号表示,pytest 会抱怨缺少一个选项。换句话说,-n 后面的数字不能为负数,而您要使用的是 。-n -32--tx-n 32--tx通常像这样用于调用 Python2.7 子进程:pytest -d --tx popen//python=python2.7有关用作 pytest 的一部分的更多信息,可以在 pytest-xdist [此标志上的文档]中找到(pytest -d --tx popen//python=python2.7)。--tx
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python