movemoveapp/laravel-postmangen
Laravel package that generates a Postman collection (JSON) from HTTP requests executed during PHPUnit tests. Configure via .env and phpunit.xml, install the PHPUnit extension and middleware to capture requests and export collections automatically.
Laravel Postmangen Package - Laravel пакет генерации Postman коллекции запросов в формате JSON файла на основе запросов, выполняемых во время PHPUnit тестов.
Вы можете установить пакет через composer:
composer require movemoveapp/laravel-postmangen
Публикация конфигурационного файла. Выполните artisan команду
php artisan vendor:publish --provider="MoveMoveIo\Postmangen\PostmangenServiceProvider"
Настройка проекта осществляется через файлы .env и phpunit.xml вашего проекта. Необходимо указать POSTMANGEN_TMP - путь для генерации промежуточных файлов относительно корня проекта:
POSTMANGEN_TMP=postman/
A также добавить секцию <extensions> в phpunit.xml:
<?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="./vendor/phpunit/phpunit/phpunit.xsd" bootstrap="vendor/autoload.php" colors="true">
...
<extensions>
<bootstrap class="MoveMoveIo\Postmangen\PostmangenPhpunitExtension">
<parameter name="outputDir" value="postman/"/>
</bootstrap>
</extensions>
...
</phpunit>
И, наконец, необходимо добавить PostmangenMiddleware класс самым первым в список middleware (app/Http/Kernel.php):
<?php
namespace App\Http;
use Illuminate\Foundation\Http\Kernel as HttpKernel;
class Kernel extends HttpKernel
{
protected $middleware = [
\MoveMoveIo\Postmangen\Phpunit\Phpunit\Phpunit\Phpunit\Middleware\PostmangenMiddleware::class,
// ...
];
// ...
}
Теперь после каждого запуска тестов PHPUnit с использованием phpunit.xml в указанной директории будет генерироваться
JSON файл <APP_NAME>.postman_collection.json.
How can I help you explore Laravel packages today?