Pest додає метод withHost для браузерного тестування піддоменів у Laravel

Перекладено ШІ 0 Laravel News 10 січня, 2026

Pest тепер дозволяє тестувати субдомени в Laravel через простий метод withHost(). Хочете перевірити багатомайнові чи командні додатки в браузерних тестах — дізнайтеся, як це зробити.

Плагін браузерних тестів Pest тепер підтримує тестування субдоменів у додатках Laravel через новий метод withHost(), що вирішує давню проблему для розробників, які будують multi-tenant та workspace додатки.

Проблема

Раніше тестовий сервер був прив’язаний до 127.0.0.1, тому неможливо було перевіряти маршрути, засновані на субдоменах. Це особливо ускладнювало роботу з маршрутизацією за доменом у Laravel:

Route::domain('{tenant}.localhost')->group(function () {
    Route::get('/dashboard', function (string $tenant) {
        return view('dashboard', ['tenant' => $tenant]);
    });
});

Без можливості вказати хост браузерні тести не могли коректно співпадати з такими маршрутами.

Рішення

Новий метод withHost() дозволяє вказати хост для тестів двома способами.

Налаштувати для окремого тесту:

it('shows the tenant dashboard', function () {
    $page = visit('/dashboard')->withHost('acme.localhost');
    $page->assertSee('Welcome to Acme');
});

Або задати глобально в файлі Pest.php:

pest()->browser()->withHost('acme.localhost');

Практичні сценарії

Ця функція особливо корисна для:

  • Laravel Sail environments: направляйте тести на ваш Sail-хост, наприклад laravel.test або його субдоменні варіанти
  • Multi-tenant isolation testing: перевіряйте, що кожен tenant бачить лише свої дані, послідовно відвідуючи різні субдомени
  • Workspace-based applications: тестуйте логіку маршрутизації за субдоменами для командних або організаційних додатків

Початок роботи

Оновіть плагін браузера Pest, щоб отримати цю можливість:

composer update pestphp/pest-plugin-browser

Детальніше — у повній статті Nuno Maduro.

Популярні

Інше, що варто прочитати

14 Оновлено 01 червня, 2026

Як задокументувати кілька API в Laravel за допомогою Scramble

Ви знали, що в одному додатку Laravel можна реалізувати кілька API? У нашій статті ви дізнаєтеся, як за допомогою Scramble легко документувати різні версії API та налаштувати доступ до документації, щоб зробити її публічною або приватною. Читайте далі, щоб дізнатися більше

26 Оновлено 01 червня, 2026

"SQLSTATE[HY000] [2002] Connection refused" у Laravel в GitHub Actions

Чи стикалися ви з помилкою «SQLSTATE[HY000] [2002] Connection refused» під час налаштування GitHub Actions для вашого додатку на Laravel? У нашій статті ми розглянемо три поширені причини цієї помилки та надамо рішення для їх усунення. Читайте далі, щоб дізнатися, як ваш CI/CD потік може працювати бездоганно!

49 Оновлено 01 червня, 2026

Nuxt 3 + Laravel Sanctum: Просте та надійне рішення для автентифікації вашого SPA та API

У сучасній веб-розробці аутентифікація є ключовою для захисту додатків і даних користувачів. Дізнайтеся, як модуль nuxt-sanctum-authentication спростить інтеграцію між Nuxt 3 та Laravel Sanctum, забезпечуючи надійний і зручний спосіб реалізації аутентифікації для вашого проєкту