py.test 与 pytest 命令有什么区别?
没有区别——py.test 是 pytest 工具的旧命令名,3.0 版本起统一为 pytest,旧名保留为别名。新代码与新文档一律使用 pytest。
没有功能区别:py.test 是 pytest 项目早期的命令名,pytest 3.0(2016 年)起正式更名为 pytest,py.test 仅作为向后兼容的别名保留。新环境直接用这个命令即可:
pytest tests/ # 推荐
py.test tests/ # 旧别名,多数版本仍可用
背景
项目最初叫 "py.test"(py 库的一部分),独立成名后命令随之改为 pytest。老教程、老 Makefile 里的 py.test 就是这么来的。
常见问题(FAQ)
Q:我的系统只有 py.test 没有 pytest? 版本太老(<3.0),pip install -U pytest 升级。
Q:python -m pytest 和 pytest 有区别吗? 行为一致;python -m pytest 会把当前目录加入 sys.path,导入问题场景下更稳。