milroyfraser/pest-plugin-gwt

v2.0.0 2024-09-26 07:59 UTC

This package is auto-updated.

Last update: 2024-09-26 08:04:01 UTC


README

一个简单的 API 允许您结构化测试,专注于行为。Given-When-Then 的分离使测试更容易一目了然。

安装

composer require milroyfraser/pest-plugin-gwt --dev

用法

use App\Exceptions\BlockedUserException;
use App\Models\User;
use function Pest\Gwt\scenario;
use function Pest\Laravel\assertDatabaseHas;

scenario('activate user')
    ->given(fn() => User::factory()->create())
    ->when(fn(User $user) => $user->activate())
    ->then(fn(User $user) => assertDatabaseHas('users', [
        'id' => $user->id,
        'activated' => true,
    ]));

scenario('activate blocked user')
    ->given(fn() => User::factory()->blocked()->create())
    ->when(fn(User $user) => $user->activate())
    ->throws(BlockedUserException::class);

更多示例

Given 一个状态

Given 方法接受一个 Closure。这是我们 Arrange 应用程序状态的地方。返回值将成为 when 闭包的参数。

When 我做某事

When 方法接受一个 Closure。这是我们 Act(执行)操作的地方。返回值将成为 then 闭包的参数。

Then 我期望一个结果

Then 方法接受一个 Closure。这是我们 Assert 结果的地方。

如果您想开始使用 Pest 测试您的应用程序,请访问主 Pest 仓库

Pest 由 Nuno Maduro 创建,并受 Sponsorware 许可证 的约束。它已开源,并现在根据 MIT 许可证 发布。