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

14
В поисках конкретных примеров того, как TDD улучшил качество и / или скорость разработки [закрыто]

Закрыто. Этот вопрос не по теме . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме разработки программного обеспечения стека Exchange. Закрыто 6 лет назад . В моей компании я пытаюсь обосновать, почему мы должны заниматься TDD. В...

14
Ортогональность юнит-тестов против краткости юнит-тестов

Я пишу юнит-тесты для системы рулевого управления для видеоигры. Система имеет несколько вариантов поведения (избегайте этой области по причине A, избегайте этой области по причине B, каждый из которых добавляет немного контекста к карте региона. Затем отдельная функция анализирует карту и...

14
TDD: я делаю это правильно?

Я новый программист (учусь только около года), и в своей цели стать лучше, я только недавно узнал о TDD. Я хотел привыкнуть к нему, потому что это кажется очень полезным. Я хотел проверить и убедиться, что я использую это правильно. Что я делаю: Подумайте о новом методе, который мне нужен. Создайте...

14
Следование TDD неизбежно ведет к DI?

Я научился выполнять тест-ориентированную разработку (TDD), внедрение зависимостей (DI) и инверсию управления (IoC) одновременно. Когда я пишу код с использованием TDD, я всегда использую DI в конструкторах моего класса. Мне интересно, если это из-за того, как я научился делать TDD, или это...

14
TDD с функциями SQL и манипулирования данными

Хотя я профессиональный программист, я никогда официально не обучался разработке программного обеспечения. Поскольку я часто бываю здесь и в SO, я заметил тенденцию к написанию модульных тестов, когда это возможно, и, поскольку мое программное обеспечение становится все более сложным и сложным, я...

14
Как тестировать код обработки изображения?

Я работаю в области обработки изображений (в основном OCR), и мне интересно, как мне интегрировать модульные тесты в мою разработку. Я уже использую модульные тесты для более «распространенного» типа кода, но когда имею дело с кодом обработки изображений, я не уверен, как с этим справиться. Этот...

14
Альтернатива индикатору «Passing / Broken build»?

При непрерывной интеграции, выполняющей тесты при каждом коммите, общепринятой практикой является постоянное прохождение всех тестов (иначе говоря, «не нарушайте сборку»). Я нахожу некоторые проблемы с этим: Например, нельзя помочь проекту с открытым исходным кодом, создав тесты, соответствующие...

14
Должен ли я написать тест, чтобы доказать, что удаление кода исправляет ошибку?

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

13
Может ли методология TDD применяться сверху вниз?

Мне неясно, как TDD, методология, обрабатывает следующий случай. Предположим, я хочу реализовать алгоритм слияния в Python. Я начинаю с написания assert mergesort([]) === [] и тест не проходит с NameError: имя 'mergesort' не определено Я тогда добавляю def mergesort(a): return [] и мой тест...

13
Как вы можете TDD для ошибки, которая может быть проверена только после того, как она была исправлена?

Вот один пример: мое веб-приложение содержит перетаскиваемые элементы. При перетаскивании элемента браузер создает «призрачное изображение». Я хочу удалить «призрачное изображение» при перетаскивании, и я пишу тест для этого поведения. Моя проблема в том, что я изначально не представляю, как...

13
TDD с ограниченными ресурсами

Я работаю в большой компании, но в команде всего два человека, занимающейся разработкой настольных LOB-приложений. Я уже давно изучаю TDD, и, хотя легко понять его преимущества для более крупных приложений, я с трудом пытаюсь оправдать время, чтобы начать использовать TDD в масштабе наших...

13
Статика это плохо, но как насчет фабричной модели?

Я работаю над проектом TDD, поэтому стараюсь как можно больше придерживаться хороших правил, связанных с таким развитием. Один из них - избегать как можно более статичных и глобальных. Я сталкиваюсь с этой проблемой: у меня есть объект "article", с которым могут быть связаны "options"...

13
TDD, новые тесты, а старые еще не реализованы

Я экспериментирую с разработкой на основе тестов и обнаружил, что часто сталкиваюсь со следующей ситуацией: Я пишу тесты для некоторой функциональности X. Эти тесты не проходят. Пытаясь реализовать X, я вижу, что мне нужно реализовать некоторую функцию Y на нижнем уровне моего кода. Так... Я пишу...

13
Как я могу протестировать звук?

Я унаследовал небольшой проект и хочу одновременно его расширить и стабилизировать, написав модульные тесты для всего нового кода, который я добавляю. Первый класс TypedAudioCreatorсоздает аудиофайлы, и это оказалось очень легко проверить первым и написать код для второго. Однако когда пришло время...

13
Является ли упаковка стороннего кода единственным решением для модульного тестирования своих потребителей?

Я делаю модульное тестирование, и в одном из моих классов мне нужно отправить письмо от одного из методов, поэтому, используя инъекцию конструктора, я внедряю экземпляр Zend_Mailкласса, который находится в среде Zend. Теперь некоторые люди утверждают, что если библиотека достаточно стабильна и не...

13
Что делать, если тесты TDD показывают новую функциональность, которая также необходима для тестов?

Что вы делаете, когда пишете тест, и вы попадаете в точку, где вам нужно пройти тест, и вы понимаете, что вам нужен дополнительный фрагмент функциональности, который должен быть разделен на его собственную функцию? Эта новая функция также должна быть протестирована, но цикл TDD говорит: «Провести...

13
Как вы справляетесь со все более длительным временем компиляции при работе с шаблонами?

Я использую Visual Studio 2012, и у него есть случаи, когда мы добавляли параметры шаблонов в класс «просто», чтобы ввести «точку шва», чтобы в модульном тесте мы могли заменить эти части на фиктивные объекты. Как вы обычно вводите точки стыка в C ++: используя интерфейсы и / или смешивание на...

13
Должен ли я проводить рефакторинг своих модульных тестов при извлечении класса из тестируемой системы?

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

13
Стратегия тестирования для игр

Я унаследовал сетевую образовательную игру. За прошедший год я работал над стабилизацией кода и добавлением новых функций. Большая часть логики находится во внешнем интерфейсе, поэтому внутренние модульные тесты, хотя и полезны, покрывают небольшой процент кода. Игра дошла до того, что начинает...