juan_gandhi: (Default)
Juan-Carlos Gandhi ([personal profile] juan_gandhi) wrote2007-05-07 10:26 am

Test-driven development

Люди любят удивляться этой идейке, мол, красиво, да, но я так не могу, мне сначала код надо написать да поотлаживать.

А я поставил опыт на себе - написать код, и не отлаживать его, а всё через тесты прогнать. Так, чтобы вообще не трассировать никакое поведение, а просто смотреть, какие тесты рухнули, и если они не дают достаточно информации, то модифицировать код и тесты.

Что получается. Код должен состоять из мелких очевидных операций. Как на картинке. Чтобы тест был тоже элементарным. И если код что-то компилирует (тссс, да, у меня и компилятор внутре имеется - Ватсон знает, о чем речь), так два теста нужно: один на фазу компиляции, другой - на фазу исполнения компилированного участка.

В идеале чтобы пальцем тыкать, если при рефакторинге что-то сломалось: "вот тут у тебя не работает". Просто из логов чтобы видно было.

[personal profile] alll 2007-05-08 10:59 am (UTC)(link)
Тогда давайте попробуем перейти от общего к частному и определить, какое отношение п.1 имеет к юнит-тестам.

Затем сделаем то же самое для п.2.

Затем сделаем то же самое для п.3.

Будем?
Или пустая трата времени?

[identity profile] darypola.livejournal.com 2007-05-08 04:36 pm (UTC)(link)
Кажется по пунктам как раз только я и высказалась. Пункты будут неверны для юнит-тестирования, если стоимость юнит-тестов окажется равной нулю. Очень хочу услышать, каким образом стоимость теста может быть нулевой.