首页 > php框架 > Laravel > 正文

如何在Laravel项目中使用Pest进行测试

穿越時空
发布: 2025-11-20 18:39:05
原创
533人浏览过
安装 Pest:使用 composer require pestphp/pest --dev 安装并运行 ./vendor/bin/pest --init 初始化;2. 安装 Laravel 插件:执行 composer require pestphp/pest-plugin-laravel --dev 和 php artisan pest:install 以获得 Laravel 集成支持;3. 编写测试:在 tests/Feature 下创建 LoginTest.php 等文件,利用简洁语法编写可读性强的测试用例。

如何在laravel项目中使用pest进行测试

在 Laravel 项目中使用 Pest 进行测试可以让你的测试代码更简洁、更具可读性。Pest 是一个基于 PHPUnit 的测试框架,专为简化测试语法而设计,特别适合与 Laravel 集成。以下是将 Pest 引入 Laravel 项目的完整流程。

安装 Pest

要在 Laravel 项目中使用 Pest,首先需要通过 Composer 安装 Pest PHP 包:

composer require pestphp/pest --dev

安装完成后,在项目根目录运行以下命令来初始化 Pest:

./vendor/bin/pest --init

这个命令会创建 tests/Pest.php 文件,并自动配置 phpunit.xml 使用 Pest 的测试发现机制。

安装 Laravel 插件(推荐)

Pest 提供了专门针对 Laravel 的插件,提供更多辅助函数和更流畅的集成体验:

composer require pestphp/pest-plugin-laravel --dev

安装后运行:

php artisan pest:install

这会生成 Laravel 专用的测试结构,比如 tests/Featuretests/Unit 下的示例测试文件,并启用 Laravel 特性支持(如无需手动调用 refreshDatabase)。

Shopxp网上购物系统
Shopxp网上购物系统

Shopxp购物系统历经多年的考验,并在推出shopxp免费购物系统下载之后,收到用户反馈的各种安全、漏洞、BUG、使用问题进行多次修补,已经从成熟迈向经典,再好的系统也会有问题,在完善的系统也从在安全漏洞,该系统完全开源可编辑,当您下载这套商城系统之后,可以结合自身的技术情况,进行开发完善,当然您如果有更好的建议可从官方网站提交给我们。Shopxp网上购物系统完整可用,无任何收费项目。该系统经过

Shopxp网上购物系统 1
查看详情 Shopxp网上购物系统

编写第一个 Pest 测试

tests/Feature 目录下创建一个测试文件,例如 LoginTest.php

// tests/Feature/LoginTest.php

use Illuminate\Foundation\Testing\RefreshDatabase;

uses(Tests\TestCase::class, RefreshDatabase::class);

test('guest can login with valid credentials', function () {
    $user = \App\Models\User::factory()->create([
        'email' => 'test@example.com',
        'password' => bcrypt('password'),
    ]);

    $response = $this->post('/login', [
        'email' => 'test@example.com',
        'password' => 'password',
    ]);

    $response->assertRedirect('/dashboard');
    $this->assertAuthenticated();
});

注意:uses() 函数用于设置共享上下文,替代传统的 setUp() 方法。所有测试都会继承指定的测试类和 Trait。

运行测试

使用以下命令运行所有测试:

./vendor/bin/pest

也可以运行特定目录或单个测试文件:

./vendor/bin/pest tests/Feature/LoginTest.php

加上 --watch 参数可在开发时自动监听文件变化(需安装 watch 模块):

./vendor/bin/pest --watch

基本上就这些。Pest 让 Laravel 测试变得更轻量、直观,尤其适合偏好简洁语法的团队。配合 Laravel 插件后,几乎可以零成本替换原有 PHPUnit 测试结构。

以上就是如何在Laravel项目中使用Pest进行测试的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号