Почему плохая идея интегрировать тестовые утверждения в тестируемый класс?утверждения интеграции в тестируемый класс
Например, что-то вроде:
class SomeClass {
function add($a) {
return $a + 1;
}
function test_add($TestCase) {
$TestCase->assertEquals($this->add(1), 2);
$TestCase->assertEquals($this->add(2), 3);
}
}
, а затем некоторые рамки выполнения по всем test_ * функций, передавая их TestCase возражают
что плохого в таком подходе? Почему все фреймворки имеют тенденцию отделять код реализации и тестовые утверждения?
спасибо. Подобные были мои первые мысли. Относительно организации. Для меня это намного проще при тестировании кода наряду с реализацией, чем поиск/запоминание кода тестирования для конкретной функции. – kakabomba
. Ваш тестовый код должен быть похож на исходный код, поэтому каталоги, в которых будет храниться ваш код, будут будет в той же структуре в вашем тестовом каталоге. Так организуются большинство крупных проектов. – Schleis