Mutmut – Python Mutation Tester
a year ago
- #testing
- #mutation-testing
- #python
- Mutmut是一个面向Python的变异测试系统,专注于易用性。
- 核心特性包括:轻松在磁盘上应用变异体、记忆已完成工作、智能识别待执行测试、交互式界面及并行执行功能。
- Mutmut 2支持对函数外部代码进行变异,采用差异化执行模型。
- 需系统支持fork操作;Windows环境下必须通过WSL运行。
- 通过pip安装后执行'mutmut run'即可运行。
- 支持增量式工作并自动记录进度。
- 使用'mutmut browse'查看变异体,'mutmut apply'将变异体写入磁盘。
- 通过setup.cfg或pyproject.toml配置文件指定待变异路径和测试目录。
- 支持Unix风格文件名模式匹配变异体。
- 可通过setup.cfg中的'also_copy'复制测试所需的附加文件。
- 可配置最大堆栈深度以限制函数相关测试范围。
- 使用'do_not_mutate'或'pragma: no mutate'排除文件/特定行变异。
- 变异策略包含精微调整:如修改整数字面量、运算符及控制语句等。
- 标准工作流:运行mutmut→浏览变异体→编写测试消灭变异体→重跑测试。
- 所有数据存储在'mutants/'目录,删除即可重置状态。
- 为贡献者提供详细的参与指南。