# AlkatraZ (05.06.2017 / 20:10)
Полнейший бред, навязанный апологетами TDD, которые в последнее время сами же признались, что спороли фигню и это неудобно (на Хабре где то была статья в переводе).
на самом деле программы писались через TDD еще с момента их становления, только тесты были не автоматическими, а ручными, в остальном все то же самое. Потому на сколько TDD несостоятелен, можно спорить долго )
По остальным замечаниям, ну тут от проекта и предпочтений разраба зависит. Я пишу тесты довольно часто, и на то есть множество причин.
Добавлено: 05.06.2017 / 21:30
# Delphinum (05.06.2017 / 21:20)
Потому на сколько TDD несостоятелен, можно спорить долго
Ты поищи на Хабре, там по этому поводу была интересная статья (перевод од авторов самого TDD) и интересный холивар в каментах. Сами авторы концепции TDD признали, что применимо далеко не всегда и в большинстве случаев вызывает неоправданные расходы на написание тестов.
Добавлено: 05.06.2017 / 21:31
Вот эта статья:
https://habrahabr.ru/post/226303/
AlkatraZ, таки я читал и все так же убежден - каждому инструменту свое место и время )
# Delphinum (05.06.2017 / 22:04)
AlkatraZ, таки я читал и все так же убежден - каждому инструменту свое место и время )
Разумеется, я про это и говорил.
Но TDD не настолько актуально, как его пытаются представить.
Его преподнесли как крутую и модную фичу, серьезные дяди сказали, что это хорошо и так надо. Толпа не задумавшись "а действительно ли это поможет в моем случае" кинулась срочно изучать и писать, тратя на это огромные ресурсы.
AlkatraZ, более того, скажу что юнит-тесты не следует писать там, где они не пригодятся. Видал я проекты, в которых тестировали худые setters и getters классов, не надо так! Понимание этого приходит с опытом.
# Delphinum (05.06.2017 / 22:32)
AlkatraZ, более того, скажу что юнит-тесты не следует писать там, где они не пригодятся. Видал я проекты, в которых тестировали худые setters и getters классов, не надо так! Понимание этого приходит
Вот это правильное мнение.
Я тоже так думаю.
# Delphinum (05.06.2017 / 22:32)
более того, скажу что юнит-тесты не следует писать там, где они не пригодятся.
Еще более того
Теоретически, тесты должны помогать написать более хороший и быстрый код.
Но на практике зачастую получается так, кто код пишут "чтоб пройти тесты" зачастую излишне его (код) усложняя. Иными словами получается замкнутый круг: тесты пишут для того, чтоб писать код, а код пишут чтоб пройти тесты.
AlkatraZ, хороший код легко тестируется (обычно)
# Delphinum (05.06.2017 / 22:39)
AlkatraZ, хороший код легко тестируется (обычно)
Да, тут не спорю.
По своей практике расскажу, как несколько лет назад начал работать со Schrutinizer-ci и потом с другими инспекторами кода.
Так вот, по началу, когда я затестировал свой код, Скрутинизер выдал мне оценку всего лишь 4 из 10.
Что хорошо, там довольно подробные описания почему снижена оценка и как правильно делать.
Очень много ссылаются на удобство тестирования.
По началу злился, но потом стал действовать как они рекомендовали.
В итоге втянулся, привык и теперь уже сам автоматом выдаю "правильный" код с оценкой 9-10.
Иными словами, даже не применяя тесты все равно можно получить пользу от рекомендаций, связанных с ними.
AlkatraZ, я вчера воткнул скутинизер, он мне 9+ воткнул