Ось де я думаю, що поведінка, керована поведінкою, показує негайну вигоду, але я не впевнений, що тестова розробка робить.
У розвитку, орієнтованому на поведінку, ви підходите до своїх квитків по-іншому: ви сідаєте з діловою людиною і працюєте з ними, щоб визначити поведінку, яку повинен мати цей фрагмент функціональності. Я описую це у записі у своєму блозі (назва посади: Написання поведінки ).
Сидячи з діловою людиною чи ким-небудь, допоможе вам і їм краще зрозуміти, що система повинна зробити, щоб усі були задоволені цим функціоналом. Що потрібно зробити, щоб можна було прийняти процес QA, який у вас є.
Визначивши критерії тестування, а потім записати ці критерії тестування у свій автоматизований набір тестів, слід зменшити кількість результатів, які ви отримуєте: хтось, хто стверджує, що функціональність порушена, тому що ви щось пропустили (або тому, що ви щось законно пропустили, або тому, що вони ніколи не сказали ви про це).
Це також може допомогти іншим сприйняти вашу команду: якщо ви сідаєте і визначаєте, що потрібно робити в системі, ви можете піти від "ідіотів, які переоблаштовують усе і витрачають час на речі, про які ми не просили", "розумний народ, який придумує корисні функції".
TL; ДР: Розвиток, орієнтований на поведінку, може швидко вдосконалитись, оскільки він орієнтований на клієнта. На мене, начебто, тестова розробка стосується тестування внутрішніх даних кодової бази, про які "ніхто" не піклується та дає менш очевидні переваги для бізнесу. (Розвиток поведінки, що рухається, має негайне зміни в вашому обличчі: інженери раптом мають набагато більше часу на зустріч із "замовником" або бізнес-аналітиком, щоб спробувати досягти цього права - що слід сприймати як хорошу справу ". , вони мають зустріч щодо Feature X, це означає, що на цьому фронті є прогрес! ")