LINUX.ORG.RU

[XP][TDD]Учебники, первоисточники, материалы

 ,


0

2

Здравствуй, ЛОР!

Собственно заинтересовался test-driven development, unit-тестами.

Какие книги можете посоветовать по этой теме, ну, или Вы считаете, что данная методология отстой, и есть гораздо лучше, то посоветуйте альтернативу, и соответствующие материалы, фреймворки, для с++ для начала.

P.S. методологию «programming, motherfucker», она и так подразумевается.

★★★★

XP, TDD

Так это уже не модно. Последние новинки этого сезона смотри на Хабрахабр.

anonymous
()
Ответ на: комментарий от anonymous

первоисточники, и, если tdd на самом деле не очень, альтернативу.

aptyp ★★★★
() автор топика

Расскажите лучше хупистори о XP, как его заюзали на практике и он изменил всем жись. А то я что-то в него не врублюсь никак.

urxvt ★★★★★
()
Ответ на: комментарий от urxvt

ну вот собственно меня тоже это интересует:-)

aptyp ★★★★
() автор топика
Ответ на: комментарий от aptyp

Кому как. Кент Бек зато кучу книжек написал. На самом деле, гибкие методологии не так уж и ужасны, надо только понимать, что сфера применения - в основном, проекты с неясными или часто меняющимися требованиями. Ну и заказчик должен понимать, что скорее всего платить придется больше. С другой стороны, он видит, за что платит. Касаемо TDD - я не знаю, по-моему, fail. При 100% покрытии кода любое движение в сторону смерти подобно. А что самое паршивое - юнит-тесты надо писать очень аккуратно, чтобы они действительно были полезны.

svr69 ★★
()
Ответ на: комментарий от svr69

При 100% покрытии кода

ты в каком упоротом сне такое видел, хотя бы на уровне рекомендаций?

любое движение в сторону смерти подобно.

API надо правильно готовить и тесты писать правильно - тогда проблем не будет при любом покрытии

А что самое паршивое - юнит-тесты надо писать очень аккуратно, чтобы они действительно были полезны.

surprise?

shty ★★★★★
()
Ответ на: комментарий от svr69

При 100% покрытии кода любое движение в сторону смерти подобно.

а так же не гарантируется отсутствие ошибок

А что самое паршивое - юнит-тесты надо писать очень аккуратно, чтобы они действительно были полезны.

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

dimon555 ★★★★★
()
Ответ на: комментарий от svr69

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

aptyp ★★★★
() автор топика
Ответ на: комментарий от dimon555

DO-178B

Software Considerations in Airborne Systems and Equipment Certification
Latest Revision December 1, 1992

ты же понимаешь, что речь там не о том идёт?

shty ★★★★★
()
Ответ на: комментарий от aptyp

ммм, окей, посмотрю, а то я было распечатал cppunit cookbook

пользовался почти всеми доступными фреймворками для тестирования, исключая платные, гуглоизделие - логичнее, функциональнее, красивее

shty ★★★★★
()
Ответ на: комментарий от shty

[XP][TDD] посоветуйте [..] фреймворки, для с++

boost.test + turtle

V_L_A_D ★★
()

Отличная новая (даже ещё не перевели) книжка по тестированию - это GOOS. Также у неё есть отличный форум, на котором подробно разбираются многие вопросы тестирования.

Для C++ используй Google Test + (опционально) Google Mock. Они мощные и удобные в использовании.

Zloddey
()
Ответ на: комментарий от shty

Если понаезжать хочется - поговори с кем другим. И про «правильно» тоже. 100% покрытие рекомендуется довольно часто. У меня был довольно большой проект с покрытием выше 90% - расширять его было более, чем муторно.

svr69 ★★
()
Ответ на: комментарий от dimon555

Насчет юнит-тестов на юнит-тестов не знаю, но вот тесты, тестирующие тестовую платформу - это сколько угодно.

svr69 ★★
()
Ответ на: комментарий от svr69

Если понаезжать хочется - поговори с кем другим.

если хочешь нести чушь - неси её в другое место

У меня был довольно большой проект с покрытием выше 90% - расширять его было более, чем муторно.

если так дело происходит, значит либо тесты написаны коряво, либо архитектура ПО уже не удоволетворяет требованиям, покрытие тут не при чём

shty ★★★★★
()
Ответ на: комментарий от shty

ты же понимаешь, что речь там не о том идёт?

The «DO-178B» standard defines five levels of software safety risk. According to the safety risk of the code under test, the «DO-178B» standard defines different levels of code coverage that you must achieve during testing.

dimon555 ★★★★★
()
Ответ на: комментарий от dimon555

The «DO-178B» standard ...

Latest Revision December 1, 1992

Kent Beck, who is credited with having developed or 'rediscovered' the technique, stated in 2003 that TDD encourages simple designs and inspires confidence.[1]

Test-driven development is related to the test-first programming concepts of extreme programming, begun in 1999...

TDD - это не абстрактные три буквы + тестирование, это вполне конкретный подход к разработке

shty ★★★★★
()
Ответ на: комментарий от shty

Какой ты умный. Наверное, и уроки сделал? Ах, прости, забыл - в детском саду уроков не задают. Чисто для справки, дубина, - 100% покрытие - весьма распространенное требование, о чем тебе и без меня сказали.

svr69 ★★
()
Ответ на: комментарий от svr69

Наверное, и уроки сделал?

школьников волнуют уроки, да

Чисто для справки, [..] - 100% покрытие - весьма распространенное требование, о чем тебе и без меня сказали.

ну и откаты с попилами тоже распространённые явления, только оне от своей распространённости умнее не становятся

shty ★★★★★
()
Ответ на: комментарий от svr69

это не абстрактные четыре буквы

конечно нет

это вполне бессмысленное сотрясение воздуха

для тебя, бородатенький, любой каприз, так и быть - потрясу

shty ★★★★★
()
Ответ на: комментарий от shty

Вот ты к чему это сейчас сказал? Про попилы? Что сто процентов - глупое требование? Оно не всегда глупое. Иногда очень даже умное.

svr69 ★★
()
Ответ на: комментарий от svr69

Что сто процентов - глупое требование?

да, ты меня понял

Оно не всегда глупое. Иногда очень даже умное.

только иногда, и только там где это обосновано

и это требование очень вскользь относится к TDD, как к методологии

shty ★★★★★
()
Ответ на: комментарий от svr69

Блин, ты уже с аватарой говоришь...

ну ты с моим ником разговариваешь, а я с твоей аватаркой - всё честно

Чем трясти-то будешь?

а что, так много вариантов?

shty ★★★★★
()
Ответ на: комментарий от shty

И когда случается это иногда? И где это обосновано? И какие тесты в этом иногда обоснованы? Неужто бековские юнит-тесты?

Понимаешь, TDD как методология (во всяком случае, в Бековском варианте) вообще вещь крайне сомнительной полезности, поскольку юнит-тесты показывают что?

svr69 ★★
()
Ответ на: комментарий от shty

Даже не знаю, после фамильярного «бородатенький».

svr69 ★★
()
Ответ на: комментарий от shty

Ну вот и славно. Я рад, что добился твоего понимания.

svr69 ★★
()
Ответ на: комментарий от svr69

И где это обосновано?

там где стоимость даже единичного фейла существенно дороже затраченного времени на доведения покрытия до 100%

примеры: авиация, космонавтика, etc.

И какие тесты в этом иногда обоснованы?

ты понимаешь почему спросил сейчас глупость?

TDD как методология (во всяком случае, в Бековском варианте) вообще вещь крайне сомнительной полезности

не осилит дорогу не идущий, но осилит комментарий

поскольку юнит-тесты показывают что?

показывает телевизор :) а модульные тесты просто позволяют неким незагадочным образом снижать количество ошибок - не более того

shty ★★★★★
()
Ответ на: комментарий от shty

модульные тесты просто позволяют неким незагадочным образом снижать количество ошибок - не более того

и именно поэтому, кстати, 100% покрытие - суть ересь и содомия

shty ★★★★★
()
Ответ на: комментарий от shty

там где стоимость даже единичного фейла существенно дороже затраченного времени на доведения покрытия до 100%. примеры: авиация, космонавтика, etc.

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

Проблема в том, что влияние юнит-тестов на количество ошибок сильно переоценено Кентом Беком и его читателями. Беку простительно - и на фейлах надо зарабатывать, но вот читателям? Своих что ли мозгов нет? Тесты, кстати, нужны, а юнит-тесты действительно упрощают и даже улучшают дизайн системы, но с ошибками - увы и ах, хотя многие программисты действительно считают, что код, покрытый тестами, не содержит ошибок. Ага, даже QA это рассказывают. А те не верят.

svr69 ★★
()
Ответ на: комментарий от svr69

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

здесь разговор шёл про 100% покрытие, а не про методологию

shty ★★★★★
()
Ответ на: комментарий от svr69

роблема в том, что влияние юнит-тестов на количество ошибок сильно переоценено Кентом Беком и его читателями.

да и фиг с ним, мне вообще его оценки серо-буро-малиновы, я его, кстати, даже и не читал :)

Тесты, кстати, нужны,

конечно нужны, но тесты - не самоцель

а юнит-тесты действительно упрощают и даже улучшают дизайн системы,

не только

но с ошибками - увы и ах

не соблаговолит ли блгородный дон пояснить свою мысль?

Ага, даже QA это рассказывают. А те не верят.

приходить в QA и рассказывать о том что ошибок не бывает - это, конечно, какая-то особая степень упоротости

shty ★★★★★
()
Ответ на: комментарий от svr69

Вообще-то не суть, а есть.

есть и имелось в виду, но не суть

shty ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.