Когда я должен выбрать тестовую разработку? - PullRequest
4 голосов
/ 09 июня 2010

Мой вопрос совпадает с названием.Я еще не занимался разработкой, управляемой тестами, я провел модульное тестирование, и мне известно о тестировании в целом, но я слышал, что гораздо выгоднее следовать TDD?Так что я должен выбирать это каждый раз или есть какие-то предварительные условия ... Мне просто нужно знать некоторые основные или важные требования, когда я должен выбрать TDD.Извините, если этот вопрос слишком тривиален.

Ответы [ 4 ]

5 голосов
/ 09 июня 2010

Я бы сказал, когда вы пишете код для проекта.Под этим я подразумеваю, где вы надеетесь создать код, который будет использоваться людьми.Это в основном весь код, кроме исследований, где вы изучаете и открываете новые методы.

Даже если вы думаете, что проект небольшой, часто вещи выходят из-под контроля без заботы.Вы будете рады тестам, когда вам придется рефакторинг большого кода.

Также обратите внимание, что tdd - это не только тестирование.Это методология разработки, которая побуждает вас создавать чистые и надежные дизайны.

Когда вы начинаете, все остальное.Как только у вас будет больше опыта, тогда, возможно, вы сможете отступить и определить, когда не следует тдд.

3 голосов
/ 09 июня 2010

ИМХО, если вам не нравится TDD, пытаться применять его в проектах, где вам нужно будет взаимодействовать / использовать устаревший код, это гораздо сложнее, чем применять его в проекте с нуля. На самом деле, есть целая книга об этом.

НТН

2 голосов
/ 09 июня 2010

Мой совет - использовать модульное тестирование как можно чаще.

Предостережение: по моему опыту, TDD лучше всего работает при работе с технологиями, с которыми у вас уже есть некоторый опыт. Часто сложно написать тестовые утверждения, если вы точно не знаете, как выглядит желаемый результат (например, попробуйте написать тест для метода действия ASP.NET MVC, если вы никогда не писали метод действия за всю свою жизнь). В этих случаях вам, вероятно, лучше писать модульные тесты после реализации кода.

1 голос
/ 10 июня 2010

Если я разрабатываю что-то без пользовательского интерфейса, я всегда использую TDD в эти дни.В конце концов, вы должны проверить программное обеспечение.Вы можете либо выполнить дополнительную работу и выполнить TDD, либо вы можете выполнить дополнительную работу и объединить пользовательский клиент только для тестирования.Первый тест более полно и более повторяем.

С другой стороны, выполнение TDD с кодом пользовательского интерфейса не принесло мне особой пользы.По разным деловым причинам я ограничен Visual Studio готовой работой, и «запись» тестов с помощью VS - это огромный расход времени, особенно когда вам приходится перезаписывать их, если вы меняете интерфейс.Я делаю TDD для бизнес-логики, лежащей в основе пользовательского интерфейса, но не для самого пользовательского интерфейса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...