SuperAPI AI 工具集

phpunit-best-practices

编程与开发

查看项目

更新于 10-16 07:57

技能介绍

用途:这是一份面向 PHPUnit 应用的测试最佳实践指南,适用于编写新的测试类或测试方法、审查测试代码质量与一致性、重构既有测试套件、配置 PHPUnit XML 以及设置代码覆盖率与测试组织。

主要能力:包含 8 个类别、共 40 条规则,按影响优先级排序。类别与优先级为:原则与模式(CRITICAL,前缀 principle-)、编码规范(CRITICAL,standard-)、测试属性(HIGH,attr-)、数据管理(HIGH,data-)、测试文档(MEDIUM,doc-)、Mocking(MEDIUM,mock-)、集成测试(MEDIUM,integration-)、配置(LOW-MEDIUM,config-)。

规则要点:原则类涵盖 Arrange-Act-Assert 结构、FIRST 原则(快速、隔离、可重复、自验证、及时)以及 DRY 与 DAMP 的取舍;编码规范要求声明 strict_types=1、测试类设为 final、方法名用 snake_case、遵循 PSR-4 与 PSR-12、断言用 $this 而非 self::、显式可见性与类型提示;属性类推荐 #[Test] 配合 it_ 前缀、#[CoversClass]、#[UsesClass]、#[Group] 与按规模分类,并优先使用 PHP 8 属性而非 PHPDoc 注解;数据管理涉及 #[DataProvider]、#[DataProviderExternal]、#[TestWith] 及工厂方法或直接实例化;文档类使用 TestDox 与可读命名;Mocking 讨论 Chicago 与 London 两种 TDD 流派、Prophecy 及避免过度 Mock;集成测试覆盖 HTTP 控制器与 CLI 命令冒烟测试、性能、单例与数据库事务清理;配置类涉及测试套件组织、严格模式、覆盖率源目录、执行顺序、缓存与失败即停。

使用方式:按需阅读 rules/ 目录下的单个规则文件,例如 rules/principle-aaa-pattern.md、rules/standard-final-classes.md。每个规则文件包含重要性说明、错误代码示例及解释、正确代码示例及解释,以及补充背景与参考。

限制:资料未提供具体安装命令、版本要求、收费方式或平台信息,暂未提供。