Facebook 开源了一个名为 Python Test Runner(ptr)的新项目,允许开发人员运行 Python 单元测试套件。ptr 和现有测试运行器之间的主要区别在于 ptr 通过爬取存储库查找一定的 Python 项目,这些项目带有的单元测试在安装文件中已经定义过。 然后,通过配置好的已启用的步骤,它会并行运行每个套件。
ptr 使用标准的开源 Python 组件提供了轻量级工具,并在 Linux,MacOS 和 Windows 上得到支持和测试。ptr 允许开发人员在一个 Python 环境中测试多个项目以及并行运行测试。
为了实现这一点,ptr 从 BASE_DIR(-b)中递归搜索 setup.(cfg | py)并解析找到的安装文件以进行 ptr 配置。如果 setup.(cfg | py)带有 ptr 配置,则 ptr 运行测试。并行运行测试套件时,将为每个套件运行所有步骤一直到出现问题,并且只有失败的运行才会将输出写入 stdout。
ptr 有 4 个主要用例:
运行 Python 测试套件;
根据需要检查并执行代码覆盖要求;
根据需要格式化和 linting Python 代码;
根据需要执行静态类型分析。
ptr 开源地址:https://github.com/facebookincubator/ptr
评论