TDD В PHP
TDD (Test-Driven Development) или Разработка через тестирование - это методология программирования, где написание тестов происходит перед написанием кода. Суть методологии заключается в том, что вы первым делом пишете тесты на каждый из требований к приложению, а затем пишете сам код, который будет проходить эти тесты.
TDD - это не только механизм создания автоматизированных тестов, но также это и принцип на основе которого вы пишете свой код. Этот принцип в основном означает, что вы должны создавать только тот код, который требуется для успешного прохождения тестов.
Пример кода на PHP с использованием PHPUnit - фреймворка тестирования для PHP:
class StackTest extends PHPUnit_Framework_TestCase
{
public function testPushAndPop()
{
$stack = array();
$this->assertEquals(0, count($stack));
array_push($stack, 'foo');
$this->assertEquals('foo', $stack[count($stack)-1]);
$this->assertEquals(1, count($stack));
$this->assertEquals('foo', array_pop($stack));
$this->assertEquals(0, count($stack));
}
}
В этом примере тест создает массив, добавляет в него строку 'foo', проверяет, что размер массива увеличился на 1, что последний элемент массива равен 'foo', а затем удаляет его из массива, проверяет, что размер массива уменьшился на 1 и что элемент был удален из массива.
Таким образом, использование TDD при написании приложений на PHP может помочь уменьшить количество ошибок в коде и упростить его поддержку.
Live : TDD en PHP (épisode #1)
PHP Rating System TDD Tutorial
Test-Driven Development with PHPUnit
Test-Driven Development (TDD) in Action
php unit testing tutorial for beginners [ Test Driven Development ] Full guide
Test Driven Development Tutorial in PHP for Beginners
Test-Driven Development in PHP: First Steps
01 - Introduction to TDD php course - zeroToMasters
Introduction into Test Driven Development for PHP Developers
TDD в проектах на PHP [GeekBrains]