Вопросы с тегом «tdd»

TDD расшифровывается как Test-Driven Development или Test-Driven Design. Это практика написания модульного теста перед написанием кода для его удовлетворения в так называемом цикле Red-Green-Refactor.

12
Действительно ли разработка, основанная на тестировании (TDD), принесла пользу проекту в реальном мире?
Я не новичок в кодировании. Я кодирую (серьезно) уже более 15 лет. У меня всегда было некоторое тестирование для моего кода. Однако за последние несколько месяцев я изучал проектирование / разработку на основе тестов (TDD) с использованием Ruby on Rails . Пока что я не вижу выгоды. Я вижу некоторую …

11
Написание минимального кода для прохождения юнит-теста - без читерства!
При выполнении TDD и написании модульного теста, как можно сопротивляться желанию «обмануть» при написании первой итерации кода «реализации», который вы тестируете? Например: давайте мне нужно вычислить факториал числа. Я начинаю с модульного теста (используя MSTest) что-то вроде: [TestClass] public class CalculateFactorialTests { [TestMethod] public void CalculateFactorial_5_input_returns_120() { // Arrange var …
36 unit-testing  tdd 

9
Каковы недостатки написания кода перед написанием модульных тестов?
Я всегда видел рекомендацию, чтобы мы сначала написали модульные тесты, а затем начали писать код. Но я чувствую, что пойти по другому пути гораздо удобнее (для меня) - написать код, а затем выполнить модульные тесты, потому что я чувствую, что у нас гораздо больше ясности после того, как мы написали …

4
Есть ли области, где TDD обеспечивает высокую рентабельность инвестиций, и другие области, где ROI настолько низок, что не стоит следовать? [закрыто]
Тестовая разработка. Я понимаю, нравится. Но написание тестов требует накладных расходов. Таким образом, следует ли использовать TDD повсеместно во всей кодовой базе или есть области, где TDD обеспечивает высокий ROI, и другие области, где ROI настолько низок, что его не стоит использовать.

8
Является ли это ограничение тестовой разработки (и Agile в целом) практически актуальным?
В разработке через тестирование (TDD) вы начинаете с неоптимального решения, а затем итеративно создаете лучшие, добавляя тестовые примеры и рефакторинг. Предполагается, что шаги будут небольшими, а это означает, что каждое новое решение будет как-то соседствовать с предыдущим. Это напоминает математические методы локальной оптимизации, такие как градиентный спуск или локальный поиск. …

7
Когда мне следует писать интеграционные тесты?
В соответствии с правилами TDD модульные тесты написаны перед рабочим кодом, но как насчет интеграционных тестов, которые осуществляют взаимодействие между конкретными (не имитированными) проводными объектами? Должны ли они быть написаны до модульных тестов или после производственного кода только для проверки «проводки»? Обратите внимание, что я говорю не о приемочных или …

3
Связь между BDD и TDD
Какое отношение имеет BDD и TDD? Из того, что я понял, BDD добавляет две основные вещи над TDD: тестирование имен (обязательно / должно) и приемочные тесты. Должен ли я следовать TDD во время разработки BDD? Если да, то должны ли мои модульные тесты TDD называться в том же стиле, что …
30 tdd  bdd 

5
Разработка, управляемая тестами - убедите меня! [закрыто]
В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, вновь открыть, обратитесь за …

3
Что происходит с тестами методов, когда этот метод становится приватным после перепроектирования в TDD?
Допустим, я начинаю разрабатывать ролевую игру с персонажами, которые атакуют других персонажей и тому подобное. Применяя TDD, я делаю несколько тестов для проверки логики внутри Character.receiveAttack(Int)метода. Что-то вроде этого: @Test fun healthIsReducedWhenCharacterIsAttacked() { val c = Character(100) //arg is the health c.receiveAttack(50) //arg is the suffered attack damage assertThat(c.health, is(50)); …

4
Должны ли мы всегда проверять ошибки модуля при их исправлении?
При исправлении ошибок рекомендуется, когда я работаю, сначала написать тест, который не удается выполнить с данной ошибкой, а затем исправить код, пока тест не пройдет. Это следует из практики TDD и должно быть хорошей практикой, но я заметил, что она имеет тенденцию создавать загадочные тесты, которые очень близки к реализации. …
29 testing  tdd 

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

6
Смысл юнит-тестов без TDD
У нас стартовал новый (довольно большой) проект, который мы планировали развивать с использованием TDD. Идея TDD провалилась (по многим деловым и некоммерческим причинам), но сейчас у нас есть разговор - должны ли мы в любом случае писать модульные тесты или нет. Мой друг говорит, что нет смысла (или близок к …
28 unit-testing  tdd 

11
Нужно ли все проверять?
Я собираюсь начать свой первый настоящий проект в Ruby on Rails и заставляю себя писать тесты TDD . Я не вижу реальных преимуществ в написании тестов, но так как это кажется очень важным, я попробую. Нужно ли тестировать каждую часть моего приложения, включая статические страницы?
28 testing  tdd 

13
Является ли 100% покрытие кода несбыточной мечтой?
Можно ли ожидать 100% покрытия кода в тяжелых веб-приложениях jquery / backbonejs? Разумно ли проваливать спринт из-за 100% покрытия, которое не выполняется, когда фактическое покрытие кода колеблется около 92% -95% в javascript / jquery?
28 code-quality  tdd  bdd 

6
Agile без юнит-тестов
Имеет ли смысл говорить о «гибкой разработке» или утверждать, что вы применяете «гибкую методологию», если кодовая база, над которой вы работаете, имеет 0% покрытия модульными тестами? (А вы, как команда, ничего с этим не делаете). Чтобы было понятно: для меня это не имеет смысла. По своему личному опыту я обнаружил, …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.