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
.