pest

用自然语言写 PHP 测试,少写代码多跑用例

Pest 是面向 PHP 开发者的现代化测试框架,构建在 PHPUnit 之上,用更简洁优雅的语法重写测试体验。它解决了传统 PHPUnit 测试代码冗长、断言写法繁琐、可读性差的问题,让开发者用接近自然语言的方式编写测试。核心能力包括:基于函数的测试写法(it()/test()),链式断言(expect()->toBe()),内置数据集(datasets)实现参数化测试,支持并行测试加速执行,提供插件体系(如 Laravel、Livewire、架构测试),以及 watch 模式自动重跑。Pest 还强调对 AI 代理友好,便于自动化生成和维护测试。它兼容现有 PHPUnit 生态,可渐进式迁移,适合从个人项目到大型 Laravel 应用的测试场景。

开源 free 编程开发
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 11717
维护状态 活跃
是否开源
定价模式 free

项目数据

分类编程开发
开发团队pestphp
所属国家
定价模式free
价格说明开源免费使用
访问状态
是否开源
开源协议MIT
主要语言PHP
技术栈/模型framework,pest,php,testing
GitHub 星标★ 11717
30天Star增速
HF 下载量
上线时间2020-03-11 00:00:00
最近更新2026-09-16 00:00:00
维护状态活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-09-12
浏览次数1

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 4 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • 已安装并可执行 PHP 的运行环境(README 未给出具体版本要求)
  • Composer 包管理工具(Pest 通过 Packagist 上的 pestphp/pest 分发)
  • 一个已初始化的 PHP 项目目录(Pest 作为测试框架集成到项目中)
  • 可访问 pestphp.com 官方文档查看完整安装与使用说明

安装与启动步骤

  1. 1确认 PHP 环境

    在终端执行命令查看 PHP 版本,确认本机已具备运行 PHP 测试框架的基础环境。README 未规定最低版本,请对照官网文档。

    php -v
  2. 2确认 Composer 可用

    Pest 在 Packagist 上以 pestphp/pest 发布,需要 Composer 拉取依赖。先确认 Composer 已正确安装。

    composer -V
  3. 3查阅官方文档安装

    README 只提供文档入口,未给出具体安装命令。请打开 pestphp.com 的文档页面,按其中 Install 章节的说明执行安装。

  4. 4按文档在项目中启用

    在 PHP 项目根目录中,依照官方文档指示将 Pest 引入为测试依赖,随后即可编写并运行测试;README 未提供确切的包安装命令与参数。

如何确认成功

按官方文档在项目根目录运行 Pest 测试,终端输出用例通过(PASS)结果且无报错即表示安装成功。

常见问题

Q:Pest 是什么,和 PHPUnit 什么关系?

A:Pest 是面向 PHP 开发者的优雅测试框架,构建在 PHPUnit 之上,兼容现有 PHPUnit 生态,可用更简洁的语法编写测试。

Q:当前最新版本是哪个?

A:README 明确提示 Pest v5 现已可用,可在 pestphp.com 查看 Pest 5 的发布公告与升级说明。

Q:完整的安装命令在哪里找?

A:README 节选未包含安装命令,请访问官方文档站 pestphp.com,或查看 Packagist 上的 pestphp/pest 页面。

Q:Pest 对 AI 代理有什么特别支持?

A:README 称 Pest 是面向 PHP 开发者和 AI 代理的测试框架,便于自动化生成与维护测试,具体特性见官网文档。

注意事项

  • README 节选未包含任何安装命令、版本号与配置项,本教程中的步骤仅为通用环境准备,务必以 pestphp.com 官方文档为准。
  • Pest 通过 Packagist 上的 pestphp/pest 分发,通常借助 Composer 集成到项目中,请勿手工下载源码文件。
  • Pest 基于 PHPUnit 构建,若项目已有 PHPUnit 测试,可参考官方文档了解渐进式迁移方式。
  • 如遇版本兼容问题,优先核对官方文档中的 PHP 版本与依赖要求。

核心亮点

  • 语法极简,it()/expect() 链式断言比 PHPUnit 更易读易写
  • 内置数据集和并行测试,参数化用例与执行速度兼顾
  • 插件生态完善,Laravel、Livewire、架构测试开箱即用

不足之处

  • 底层依赖 PHPUnit,部分高级定制仍受其约束
  • 非 Laravel 项目的插件与文档支持相对较少

适用场景

  • Laravel 应用的功能与单元测试
  • 需要参数化多组数据的接口测试
  • 团队统一测试风格并提升可读性

替代项目

PHPUnit、Codeception

项目介绍

pest 是一个编程开发领域的开源项目,官方简介:The elegant testing framework for PHP developers and AI agents.。项目使用 PHP 开发,在 GitHub 上获得 11714 星标。

上一篇:openchamber

下一篇:jupyter-ai

同类项目推荐

bolt.new 开源

想到啥说啥,网页应用当场生成直接能用

Prompt, run, edit, and deploy full-stack web applications. -- bolt.new -- Help Cente···

★ 16553 2026-08-09
fuzz4all 开源

用大模型自动生成测试输入,发现各种软件漏洞

️Fuzz4All: Universal Fuzzing with Large Language Models

★ 338 2026-08-09
superpowers-zh 开源

全套 AI 编程神技汉化好了,照着用就行。

AI 编程超能力 · 中文增强版 — superpowers(250k+ ⭐)完整汉化 + 4 个中国原创 skills···

★ 8109 2026-08-09
Gitea 代码托管 开源

轻量 Git 代码托管平台

Git with a cup of tea! Painless self-hosted all-in-one software development service,···

★ 58021 2026-08-22