PestPHP 正式开源,一个优雅的测试框架

PHP

控制台的传奇人物 Nuno Maduro 已经将 Pest开源了, 这是一个注重简单性的优雅PHP测试框架.

下面有一个简单的例子,如果你使用过其他测试工具,比如Mocha或者Jest,你就会对它觉得熟悉:

test('asserts true is true', function () {
    assertTrue(true);
});

// or
it('asserts true is true', function () {
    assertTrue(true);
});

在引擎底层, Pest测试被绑定到一个测试用例类 (PHPUnit 的 TestCase 默认情况下), 这就意味着你的闭包函数会在配置测试用例的环境中运行:

it('has home', function () {
    $this->assertTrue(true);

    // \PHPUnit\Framework\TestCase
    echo get_class($this); 
});

请务必查看关于如何通过Pest提供的 uses()函数定制底层测试用例的文档.

开始之前,请确定已经阅读过 Laravel Guide ,以了解如何在 Laravel 中使用 Pest 创建测试,下面是针对 Laravel 进行的测试:

use Tests\Feature;
use Illuminate\Foundation\Testing\DatabaseMigrations;

uses(TestCase::class, DatabaseMigrations::class);

it('has home page')
    ->get('/')
    ->see('Laravel.io')
    ->see('The Laravel Community Portal');

更多知识

Pest 的使用与安装,请查阅 PestPHP 文档 ,其源码可以在 pestphp/pest 找到。 Pest 同样也提供了对 Symfony 和 PHPUnit 的支持。关于作者 sponsoring Nuno 。

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://laravel-news.com/pestphp-release...

译文地址:https://learnku.com/php/t/44848

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!