Цитата:
|
мне просто надоело тратить время на сидение в отладчике и "клик-клик" тестинг и я хотел бы этот процесс ускорить
|
Дык, пиши тесты, т.к. это действительно добро, но TDD говорит нам:
"спроектируй интерфейс, напиши тест всех возможных вариантов применения, а уже потом делай реализацию", но на практике если мы пишем что-то чуть более-менее сложное, что в процессе реализации интерфейс метода может поменяться очень много и если следовать концепции TDD, то мы просто затрахаемся и в итоге плюнем
И не старайся покрыть весь код, т.к. это тоже бред и утопия. Вот к примеру в Collection сейчас более 1000 тестов, но это капля в море, т.к. для 100% покрытия всех-всех возможностей нужно примерно 1e6 тестов (число взято из комбинаторики).
Фиксировать тестами нужно уже финальный функционал на предмет основных фич, но самое главное, что действительно очень важно:
когда фиксишь баг, то обязательно напиши тест, чтобы в будующем этот баг не вернулся бумерангом.
Цитата:
|
Кстати, чем концепция TDD отличается от обычного программирования?
|
Ответил выше.
Цитата:
|
Может я что-то странное делаю, но чаще всего в коде, который я пишу либо невозможно сразу эмулировать адекватный тест, либо настолько сложно, что он становиться бессмысленным.
|
Практика подсказывает, что даже самый упоротый тест можно смодулировать, но порой приходится городить такие адские фасады, что действительно 90% людей просто забивает, и я например не исключение
Цитата:
|
то же самое относится и к BDD, полагаю?
|
Может я что то не так понимаю, но ведь BDD - это подход к самому написанию тестов, а не философия разработки, как TDD, т.е. в таком случае BDD - это просто сахар над банальным тестом.