Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
решил сам попробовать — и ничего не получилось.Начинал использовать TDD несколько раз. Не получалось из-за нетривальных способов тестирования тривиальных методов. Простой пример: использование рефлексии, чтобы протестировать геттер/сеттер. Да ещё непонятно что писать сначала — тест на геттер (установка приватного свойства через рефлексию), геттер, тест на сеттер (проверка через геттер или через рефлексию?), сеттер или сначала тест на сеттер (проверка через рефлексию), сеттер, тест на геттер (установка через сеттер или рефлексию?), геттер.
function XXXGetterAndSetterOfValueTest() {
$testValue = 123;
$this->object->setValue($testValue);
$this->assertEqual($object->getValue(), $testValue);
, а потом, когда логика становится сложнее, начинаю использовать рефлексию и т. п.class A {
private $value;
function setValue($value) {
$this->value = $value;
}
function getValue() {
return $this->value;
}
}
Real-life unit tests