craft-pest-core

为Craft CMS提供优雅的PestPHP测试框架集成

安装使用

复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:

帮我安装这个 AI Skill:craft-pest-core。
它的用途是:为Craft CMS提供优雅的PestPHP测试框架集成
完整的 Skill 内容见:https://321skill.com/skills/craft-pest-core/raw/index.md
请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。

提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。

使用示例

“为我的Craft CMS项目首页编写一个测试,确保它能正常加载并且标题正确。”,它会引导你安装Craft Pest,并生成类似 `it('loads homepage with correct title')->get('/')->assertOk()->expectSelector('h1')->text->toBe('Welcome');` 的测试代码。或者,当你需要测试一个新建的新闻板块时,AI可以指导你使用 `News::factory()` 来快速创建测试数据并断言其在前端的展示。

介绍

这个Skill解决了Craft CMS开发者编写测试代码繁琐、入门门槛高的问题。它通过一个Composer包,将流行的PestPHP测试框架无缝集成到Craft CMS项目中,并提供了大量针对Craft生态的测试辅助工具,如用于快速生成测试数据的工厂(Factories)和用于断言HTML响应的便捷方法。

使用非常简单,只需通过Composer安装,即可在项目中运行./craft pest命令来执行测试。开发者可以像写自然语言一样编写测试用例,例如it('loads the homepage')->get('/')->assertOk(),大大简化了HTTP请求测试、内容断言和数据准备的流程。

它非常适合使用Craft CMS进行网站开发的前端、后端或全栈开发者,特别是那些希望提升代码质量、进行回归测试或为插件模块编写可靠测试的工程师。对于测试工程师来说,它提供了一套与Craft深度绑定的测试工具链。

建议在项目初期就引入此Skill,以建立测试驱动开发(TDD)或行为驱动开发(BDD)的规范。需要注意的是,它主要面向功能测试和集成测试,对于单元测试,你可能还需要结合PHPUnit的原生功能。

核心特点

与通用的PestPHP集成不同,它深度适配Craft CMS,提供了开箱即用的Craft工厂(如Entry、Section、Volume工厂)来模拟真实内容结构,并能自动检测并应用项目的`project.yaml`配置,确保测试环境与开发/生产环境的一致性。

注意事项

主要专注于Craft CMS的功能与集成测试,不适用于测试与Craft无关的纯PHP库或前端框架。

常见问题

Craft Pest 和普通的 PestPHP 有什么区别?

Craft Pest 是专为 Craft CMS 定制的 PestPHP 扩展,内置了针对 Craft 内容模型、字段、章节等的测试工厂和断言方法,能极大简化 Craft 项目的测试编写。

这个包会影响生产环境吗?

不会。建议使用 `--dev` 标志安装,它仅作为开发依赖,用于本地测试和持续集成环境。

给 AI 助手的安装指引

如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:

请访问 https://321skill.com/skills/craft-pest-core/raw/index.md 读取 craft-pest-core 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。