У меня с тестами опыта считай нет😔 Пишу тестовое задание, там указано "TDD or BDD". Обложилось туториалами и пытаюсь максимально понять что и как вообще
<тут была ненависть про вакансии с требовании TDD or BDD, знания паттернов, scrum и прочих религиозных обрядов>
Оба подхода подразумевают, что сначала пишутся тесты, под них разрабатывается код. в общем, разница такая: BDD это тестирование снаружи (от общего к частному), ТDD это тестирование изнутри (от частного в общему).
На примерах:
тестирование с помощью capybara процесса входа в систему, когда есть есть готовый UI и робот выполняет какие-то операции с ним как обычный юзер — это BDD.
тестирование отдельных методов, например, умение объекта User шифровать пароль при сохранении — это TDD