Unit-тесты (или модульные тесты) — это тесты, которые проверяют работу отдельных модулей (функций, классов, методов) в коде. Они позволяют убедиться, что каждый компонент программы работает правильно в изоляции от других частей системы.
🚩Зачем нужны Unit-тесты?
🟠Раннее выявление ошибок
тесты помогают обнаружить баги сразу после написания кода.
🟠Упрощение рефакторинга
при изменении кода можно быстро проверить, не сломалось ли что-то.
🟠Уверенность в качестве кода
тесты показывают, что функции работают так, как задумано.
🟠Автоматизация тестирования
можно запускать тесты автоматически перед каждым релизом.
🟠Документирование кода
тесты помогают понять, как должна работать функция.
🚩Как писать Unit-тесты в PHP?
В PHP для написания тестов чаще всего используют PHPUnit – это популярный фреймворк для модульного тестирования.
Устанавливаем через Composer:
composer require --dev phpunit/phpunit
🚩Пример Unit-теста
Допустим, у нас есть функция в классе
Calculator, которая складывает два числаclass Calculator {
public function add($a, $b) {
return $a + $b;
}
}Теперь создадим тест для проверки работы метода
adduse PHPUnit\Framework\TestCase;
class CalculatorTest extends TestCase {
public function testAdd() {
$calc = new Calculator();
$result = $calc->add(2, 3);
$this->assertEquals(5, $result);
}
}
🚩Запуск тестов
Чтобы запустить тест, используем команду
vendor/bin/phpunit tests
Ставь 👍 и забирай 📚 Базу знаний