pytest插件和bowler codemod帮助将测试迁移到python 3
pytest-mark-no-py3的Python项目详细描述
pytest-mark-no-py3
这个包提供一个pytest插件和一个Bowler codemod帮助将测试迁移到python 3。
任何标记为@pytest.mark.no_py3
的测试都将在以下情况下失败
在python 3上运行,如果意外通过,则测试将失败。
用法
添加@pytest.mark.no_py3
在测试依赖项中安装此包。
在python 3上运行测试,用pytest的
--result-log
保存结果。 选项,例如:tox -e py37 -- --result-log=test-results.txt
使用python 3虚拟机中的
bowler
附加程序安装此软件包:pip install pytest_mark_no_py3[bowler]
将标记应用于在python 3上失败的所有测试,从 运行测试的同一目录:
python -m pytest_mark_no_py3.add --result-log=path/to/result-log.txt path/to/your/tests
如果您感到自信,还可以使用
--no-interactive
选项 在不提示接受更改的情况下应用codemod。
删除@pytest.mark.no_py3
修复一些代码,使测试开始在python 3上传递,从而违反了xfail。
在python 3上运行测试,用pytest的
--result-log
保存结果。 选项,例如:tox -e py37 -- --result-log=test-results.txt
警告:唯一失败的测试应该是您修复的测试,并且 希望从中删除标记!
使用python 3虚拟机中的
bowler
附加程序安装此软件包:pip install pytest_mark_no_py3[bowler]
从所有“失败”的测试中移除标记(即 在python 3上,运行于 您从以下位置运行测试:
python -m pytest_mark_no_py3.remove --result-log=path/to/result-log.txt path/to/your/tests
如果您感到自信,还可以使用
--no-interactive
选项 在不提示接受更改的情况下应用codemod。
运行测试
运行tox
。