---
title: "Laravel Boost v2.6.0: уніфікований підхід до тестування та покращена безпека баз даних"
url: https://laravelukraine.com/blog/laravel-boost-v260-unifikovanii-pidxid-do-testuvannia-ta-pokrashhena-bezpeka-baz-danix
date: 2026-08-27
source: https://laravel-news.com/laravel-boost-2-6-0?utm_medium=feed&utm_source=feedpress.me&utm_campaign=Feed%3A+laravelnews
---

# Laravel Boost v2.6.0: уніфікований підхід до тестування та покращена безпека баз даних

Laravel Boost v2.6.0 представляє суттєві зміни в роботі з тестуванням та безпекою баз даних. Реліз об'єднує кілька навиків тестування в один уніфікований підхід, додає захист на рівні бази даних для інструменту `DatabaseQuery` MCP та виправляє проблеми з управлінням навиками.

## Уніфікований навик Testing Best Practices

Раніше Laravel Boost постачався з кількома окремими навиками тестування: `pest-testing`, `enforce-testing` та `phpunit-guidelines`. Через перетин функціональності цих навиків AI-агенти могли створювати непослідовні тестові набори, тестувати внутрішні компоненти фреймворків або додавати зайві моки.

Версія 2.6.0 консолідує всі рекомендації з тестування в єдиний навик `testing-best-practices`. Boost динамічно формує цей навик на основі встановлених у проєкті пакетів тестування, адаптуючись до Pest, PHPUnit, браузерного тестування та Test Impact Analysis.

## Дев'ять ключових напрямків тестування

Консолідований навик охоплює дев'ять основних сфер:

- **Assertions (Твердження)**: заохочує використання прямих семантичних тверджень, таких як `assertOk()`, замість перевірки сирих HTTP-кодів статусу
- **Endpoint Tests (Тести ендпоінтів)**: фокусує HTTP-тести на авторизації та основних відповідях, а не на тестуванні валідаційних матриць через повні запити
- **Feature Discovery (Виявлення функціональності)**: допомагає агентам знаходити існуючі тести перед написанням нових
- **Isolation (Ізоляція)**: запобігає витоку спільного стану та обмежує транзакції бази даних релевантними тестами
- **Naming (Іменування)**: встановлює чіткі конвенції найменування, які описують очікувану поведінку
- **Performance (Продуктивність)**: не рекомендує повільні патерни тестування, наприклад створення зайвих записів у базі даних у хуках налаштування
- **Review (Перегляд)**: визначає критерії для аудиту тестових наборів та видалення дублікатів покриття
- **Security (Безпека)**: просуває тестування ворожих вхідних даних та неавторизованих меж
- **Test Data (Тестові дані)**: рекомендує фокусовані фабрики моделей замість роздутих наборів даних

## Транзакції лише для читання на рівні бази даних

Інструмент `DatabaseQuery` MCP раніше використовував лексичний парсинг запитів та фільтрацію за ключовими словами для запобігання операціям запису. Хоча перевірка ключових слів блокує очевидні запити `INSERT` або `UPDATE`, SQL-діалекти включають складні конструкції, такі як модифікуючі дані загальні табличні вирази (CTE), які лексичні парсери можуть пропустити.

У версії 2.6.0 `DatabaseQuery` виконує запити всередині транзакції лише для читання, яка забезпечується самою базою даних:

- На MySQL та MariaDB Boost видає `SET TRANSACTION READ ONLY` перед початком транзакції
- На PostgreSQL Boost запускає транзакцію та виконує `SET TRANSACTION READ ONLY`
- На SQLite Boost встановлює `PRAGMA query_only = ON`

Boost завжди відкочує транзакцію після завершення запиту, гарантуючи, що рушій бази даних відхилить модифікації навіть якщо запит обійде лексичний парсинг.

## Покращення управління навиками та інструментів

Цей реліз також включає кілька виправлень інструментів:

**Безпечна інсталяція навиків**: команда `boost:add-skill` тепер ігнорує файли `SKILL.md` у кореневій директорії репозиторію, запобігаючи видаленню всієї директорії навиків під час інсталяції. Команда також приймає довільні форми шляхів навиків.

**Підтримка MySQL `ANSI_QUOTES`**: читання схеми тепер цитує типи таблиць як рядкові літерали, дозволяючи інструментам схеми працювати, коли MySQL працює в режимі `ANSI_QUOTES`.

**Ін'єкція MCP Server**: Boost зберігає кінцеві коментарі при записі конфігурацій MCP-сервера у JSON-файли.

**Виявлення агентів**: Boost запобігає помилковому виявленню Antigravity при скануванні спільної директорії `.agents`.

Повний список змін доступний у changelog на GitHub, а детальніше про можливості Laravel Boost можна дізнатися з офіційної документації проєкту.
