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

98
Как вы обнаруживаете проблемы с зависимостями в модульных тестах, когда используете фиктивные объекты?

У вас есть класс X, и вы пишете несколько модульных тестов, которые проверяют поведение X1. Есть также класс A, который принимает X в качестве зависимости. Когда вы пишете модульные тесты для A, вы имитируете X. Другими словами, во время модульного тестирования A вы устанавливаете (постулируете)...

98
Какой смысл проводить модульные тесты на CI-сервере?

Зачем вам запускать модульные тесты на CI-сервере? Конечно, к тому времени, когда что-то будет передано мастеру, разработчик уже запустил все модульные тесты и исправил все ошибки, которые могли произойти с их новым кодом. Не в этом ли смысл юнит-тестов? В противном случае они только что совершили...

98
Модульные тесты действительно так полезны? [закрыто]

Я только что закончил со степенью в CS, и в настоящее время у меня есть работа в качестве младшего разработчика .NET (C #, ASP.NET и веб-форм). Когда я еще учился в университете, тема модульного тестирования все-таки освещалась, но я никогда не видел ее преимуществ. Я понимаю, что он должен делать,...

93
Почему провал модульных тестов считается плохим?

Очевидно, что в некоторых организациях частью процесса выпуска программного обеспечения является использование модульного тестирования, но в любой момент времени все модульные тесты должны пройти. Например, может быть какой-то экран, который показывает все модульные тесты, проходящие зеленым цветом...

92
Как мотивировать сотрудников писать юнит-тесты? [закрыто]

Мы работаем над крупным продуктом, который выпускается около 5 лет. Кодовая база ... эээ ... работает. Не очень хорошо, но это работает. Новые функции добавляются в производство и тестируются с небольшим контролем качества. Исправлены ошибки и т. Д. Но никто, кроме меня, не пишет юнит-тесты. Никто...

92
Почему работает TDD? [закрыто]

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

91
Есть ли причина, по которой тесты не пишутся inline с кодом, который они тестируют?

Недавно я немного читал о грамотном программировании , и это заставило меня задуматься ... Хорошо написанные тесты, особенно спецификации в стиле BDD, могут лучше объяснить, что делает код, чем проза, и имеют большое преимущество проверка собственной точности. Я никогда не видел тесты, написанные в...

91
Должны ли мы разрабатывать наш код с самого начала, чтобы включить модульное тестирование?

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

87
Где грань между логикой приложения модульного тестирования и ненадежными языковыми конструкциями?

Рассмотрим функцию, подобную этой: function savePeople(dataStore, people) { people.forEach(person => dataStore.savePerson(person)); } Это может быть использовано так: myDataStore = new Store('some connection string', 'password'); myPeople = ['Joe', 'Maggie', 'John']; savePeople(myDataStore,...

86
Помогут ли модульные тесты Citigroup избежать этой дорогой ошибки?

Я читал об этом snafu: ошибка программирования стоит Citigroup $ 7 млн ​​после того, как допустимые транзакции ошибочно принимались за тестовые данные в течение 15 лет . Когда система была представлена ​​в середине 1990-х годов, программный код отфильтровывал все транзакции, которым были присвоены...

86
Насколько большим должен быть мой проект, чтобы я смог его протестировать? [закрыто]

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

85
Является ли статика универсальным «злом» для модульного тестирования, и если да, то почему Resharper рекомендует его? [закрыто]

Я обнаружил, что существует только 3 способа статических зависимостей модульного тестирования (макет / заглушка) в C # .NET: Кроты TypeMock JustMock Учитывая, что два из них не бесплатны, а один не выпущен в версии 1.0, издеваться над статичными вещами не так уж и легко. Имеет ли это статические...

84
Считается ли «плохой практикой» проверка содержимого / кодировки файла в модульных тестах?

Немного контекста: ранее сегодня мне пришлось обновить некоторый код SQL, предоставленный другим моим коллегой, и, поскольку это довольно большой скрипт, он хранится в виде отдельного файла (который затем читается и выполняется во время выполнения). При этом я случайно представил две ошибки,...

84
Это плохая практика для обеспечения порядка выполнения для модульных тестов?

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

83
Разве юнит-тесты не должны использовать мои собственные методы?

Сегодня я смотрел видео " Основы JUnit ", и автор сказал, что при тестировании определенного метода в вашей программе вы не должны использовать другие ваши собственные методы в этом процессе. Чтобы быть более конкретным, он говорил о тестировании некоторого метода создания записи, который принимает...

81
Зачем позволять / не позволять разработчикам тестировать свою работу

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

80
Как именно следует писать модульные тесты без насмешек?

Как я понимаю, суть модульных тестов заключается в том, чтобы тестировать модули кода изолированно . Это значит, что: Они не должны нарушаться никакими несвязанными изменениями кода в другом месте кодовой базы. Только один модульный тест должен прерваться из-за ошибки в тестируемом модуле, в...

77
Это плохая практика, чтобы модифицировать код строго для целей тестирования

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

72
Имеет ли смысл писать тесты для унаследованного кода, когда нет времени для полного рефакторинга?

Я обычно стараюсь следовать советам книги Эффективная работа с унаследованным Cod е . Я нарушаю зависимости, перемещаю части кода в @VisibleForTesting public staticметоды и в новые классы, чтобы сделать код (или, по крайней мере, его часть) тестируемым. И я пишу тесты, чтобы убедиться, что я ничего...

71
Можем ли мы предположить во время тестирования программного обеспечения, что пользователь не будет выполнять такие глупые действия с программным обеспечением?

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