Skip to content

Generation of Postman collection JSON file based on performed HTTP requests during execution of PHPUnit runner

License

Notifications You must be signed in to change notification settings

movemoveapp/laravel-postmangen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel Postmangen Package

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.

About

Generation of Postman collection JSON file based on performed HTTP requests during execution of PHPUnit runner

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages