Комбинатор
980 / 252 / 13
Регистрация: 10.03.2010
Сообщений: 3,556
|
|
1 | |
TDD15.03.2012, 17:26. Показов 1680. Ответов 16
TDD - Test Driven Development.
Хотелось бы узнать, используете ли вы тесты(те самые TDD) при разработке своих продуктов? И вообще ваше мнение об этом. Я вот не использую пока что. Справляюсь как-то без них. Но чувствую, что уже наверное пора бы... Да и многие авторы, очень рекомендуют, сначала строить тест для будущего модуля, а потом уже создавать сам модуль и тестировать его... Конечно, красиво звучит, но как-то в лом делать их, я могу и сам в ручную все проверить... Пока что.
0
|
15.03.2012, 17:26 | |
Ответы с готовыми решениями:
16
TDD на практике Методология TDD Google Test и TDD TDD/BDD и Python |
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
|
16.03.2012, 03:11 | 3 |
DenQ, естественно. Работаю над очень большим многолетним проектом. На днях столкнулся с ситуацией, когда было затребовано изменение, которое проходит через всю программу(100500+ строк кода, в буквальном смысле). При этом отлавливать это изменение по всему проекту достаточно проблематично. Качественно написанные JUnit(не только мной, но и остальными девелоперами) позволили мне сократить затраты на поиск и фикс импакта буквально до двух дней, т.к. упали именно в тех местах, где был этот самый импакт(не о всех из этих кейсов я помнил).
Так что если проект достаточно большой, то без них обходится будет очень сложно, можно сказать, что практически не реально
0
|
Комбинатор
980 / 252 / 13
Регистрация: 10.03.2010
Сообщений: 3,556
|
|
16.03.2012, 12:38 [ТС] | 4 |
Хахах.. рассмешил...
Для тебя наверное это очень много... Да, после каждого изменения, пока что разработанная мной структура проекта позволяет не заботиться о таких вещах. Проверяешь непосредственно новый функционал, а в конце проверяешь все ли работает исправно в расширяемом модуле. И если что-то не так, то я довольно быстро нахожу в чем причина. И устраняю ее и снова проверяю модуль. Данным вопросом я занялся лишь потому что, очень скоро к проекту нужно будет подключать других программистов. И чтобы им было легче, да и разработка шла быстрее. Я то свою систему знаю, а вот они... Да и сам чувствую, это ускорит разработку процентов на 20. И даст ощутимую стабильность проекта в целом. M128K145, спасибо очень интересно. Надо будет выделить время, для разработки модуля тестирования, других модулей и контролеров. ЗЫ. На данный момент в проекте более 150 файлов(без учета сторонних библиотек, картинок и прочего, что ни есть моим кодом(иначе было бы более 3500 файлов)), и в каждом из них в среднем 300 строк кода. Суммарно это выходит более чем 45 000 строк кода, и это по самым скоромным подсчетам. И это только 1 месяц разработки. И это еще без учета пользовательских функций на plpgsql. И еще мало контроллеров - можно сказать, что пока разрабатывается платформа, для удобной разработки будущих контроллеров и модулей. Пока что удается справляться, но думаю тесты облегчат жизнь всем.
0
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
16.03.2012, 14:02 | 5 |
Как это пока? Может уже? Начинают ведь без опыта и знаний, а со временем их приобретают, тогда уже можно иногда без тестовых прогонов обходиться. Я ещё нее дошл до полного отказа от тестов, но уже редко тестирую.
0
|
Комбинатор
980 / 252 / 13
Регистрация: 10.03.2010
Сообщений: 3,556
|
|
16.03.2012, 16:05 [ТС] | 6 |
taras atavin, я так понял ты считаешь тестирование, уделом новичков?
0
|
16.03.2012, 16:12 | 7 |
DenQ, тестирование удел тестеров. так наверно правильнее. ты же сам знаешь что супер идея это редкость и ее нельзя топить в рутине тестирования. для тестирования есть тестер, для кодирования есть кодер. а для идеи есть....
0
|
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
|
16.03.2012, 16:17 | 8 |
0
|
Комбинатор
980 / 252 / 13
Регистрация: 10.03.2010
Сообщений: 3,556
|
|
16.03.2012, 17:07 [ТС] | 10 |
Pure, ты просто не понял о чем речь. О каких тестах тема.
0
|
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
|
16.03.2012, 17:58 | 12 |
Pure, для справки Модульное тестирование
0
|
4 / 4 / 0
Регистрация: 07.05.2011
Сообщений: 53
|
|
17.03.2012, 05:17 | 13 |
О, taras atavin очень много чего считает - советую пообщатся)))
А по теме - приучаю себя постепенно к тестам, профит таки может быть иногда очень большим. Главное без паранойи и разумно, и не гнаться за 100% покрытием
0
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
|
17.03.2012, 06:03 | 14 |
1000 строк достаточно, чтобы начать теряться в функциях и не помнить, где какая
изменения - это не всегда добавление бывает так, что нужно переделывать код и когда программ несколько, ты уже не вспомнишь, где какой функционал в какой-то из них, где новый, где старый, а где не очень старый
0
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
17.03.2012, 20:18 | 15 |
Не только, но новичков - в первую очередь. Особенно, частое тестирование. Удел новичков - тестирование после каждой закорючки, опытные от этого всегда отходят. Совсем отойти от тестирования абсолютно не способны те, у кого сложность программ соответствует опыту, если же продолжать клепать полный примитив, то тестирование становится не нужным по причини гарантии правильности.
2-х миллионов мало, а жалкой тысячи достаточно? Однако! В сложных проектах память - далеко не всё, но запутаться даже в структуре - это надо уметь.
0
|
_
2364 / 1243 / 78
Регистрация: 28.10.2009
Сообщений: 4,331
|
|
17.03.2012, 20:59 | 16 |
Я тут читал в одной книге в разделе про юнит-тестирование, что в идеале грубо говоря надо создавать по тесту для каждой строки кода, причем это рекомендовалось не для новичков, а уже для профессиональных программистов
0
|
1259 / 650 / 44
Регистрация: 06.02.2011
Сообщений: 1,654
|
|
18.03.2012, 09:20 | 17 |
Интересная тема, отмечусь
Что, кто-то реально TDD использует? Меня например BDD полностью устраивает в отличии от сабжа. Причем писать тесты до кода. И надо тестировать тесты (да масло масленое, но тем не менее). Мне такая идея категорически не нравиться. ИМХО тесты должны проверять функциональность программы по спецификации, а не факт перемещения двух строк для улучшения читаемости кода. Добавлено через 8 минут Дочитал тему, сложилось впечатление, что никто TDD не пользует
0
|
18.03.2012, 09:20 | |
18.03.2012, 09:20 | |
Помогаю со студенческими работами здесь
17
Переход к TDD: мучительно Задание на тестирование (TDD) Инструменты, поддерживающие методологию TDD Спроектируйте с использованием TDD класс Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |