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

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


5
Сломанные старые / устаревшие юнит-тесты
Я работаю в большой компании и отвечаю за большое Java-приложение с тысячами тестов Junit. С тех пор, как я перешел на эту роль, было 200-300 сломанных тестов (вероятно, сломанных в течение многих лет). Тесты старые и хрупкие, и они представляют собой кучу спагетти-зависимостей, которые обычно заканчиваются живыми данными песочницы. Моя …

3
Как привлечь внимание программиста в определенных условиях?
Давайте начнем с примера. Допустим, у меня есть метод, exportкоторый сильно зависит от схемы БД. И под «сильно зависит» я имею в виду, что я знаю, что добавление нового столбца в определенную таблицу часто (очень часто) приводит к изменению соответствующего exportметода (обычно вы также должны добавить новое поле к данным …

4
Не нарушают ли макеты принцип Open / Closed?
Некоторое время назад я прочитал в ответе о переполнении стека, которое не могу найти, предложение, объясняющее, что вы должны тестировать публичные API, и автор сказал, что вы должны тестировать интерфейсы. Автор также объяснил, что если реализация метода изменилась, вам не нужно изменять тестовый пример, поскольку это нарушит контракт, обеспечивающий работоспособность …

5
Как сделать один тест зависимым от результатов другого теста?
Допустим, есть служебный класс, который предоставляет некоторые распространенные статические методы, используемые повсеместно в вашем коде многими другими классами. Как бы вы разработали свои модульные тесты для потребителей утилиты, чтобы их тесты не выполнялись, если какой-либо из тестов утилиты не пройдет? Можете ли вы сделать это или вам нужно проверить это …

4
Таким образом, я пишу этот код для тестирования, но что-то не так с ним, что я пропускаю?
У меня интерфейс называется IContext. Для целей этого не имеет значения, что он делает, за исключением следующего: T GetService<T>(); Этот метод просматривает текущий DI-контейнер приложения и пытается разрешить зависимость. Я думаю, что он довольно стандартный. В моем приложении ASP.NET MVC мой конструктор выглядит следующим образом. protected MyControllerBase(IContext ctx) { TheContext …

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

5
Типы юнит-тестов на основе полезности
С точки зрения ценности я вижу две группы юнит-тестов в моей практике: Тесты, которые проверяют некоторую нетривиальную логику. Написание их (до или после реализации) выявляет некоторые проблемы / потенциальные ошибки и помогает быть уверенным в том случае, если логика изменится в будущем. Тесты, которые проверяют очень тривиальную логику. Эти тесты …
13 unit-testing  tdd 

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

3
Является ли использование юнит-тестов хорошей историей?
Итак, у меня есть модуль аутентификации, который я написал некоторое время назад. Теперь я вижу ошибки моего пути и пишу для него юнит-тесты. При написании юнит-тестов мне трудно придумывать хорошие имена и хорошие области для тестирования. Например, у меня есть такие вещи, как RequiresLogin_should_redirect_when_not_logged_in RequiresLogin_should_pass_through_when_logged_in Login_should_work_when_given_proper_credentials Лично я думаю, что …

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

5
Эффективен ли процедурный код модульного тестирования?
В текущем проекте силы, которые хотят включить модульное тестирование, включены в наш цикл разработки, чтобы избежать постоянного количества ошибок, которые, похоже, проникают в наш код. Проблема в том, что код спагетти на 95% процентов процедурный, с которым я никогда не проводил модульное тестирование (весь мой опыт с модульным тестированием был …

8
Какова ценность проверки при неудачных юнит-тестах?
Хотя существуют способы не допустить выполнения модульных тестов, какова ценность проверки при неудачных модульных тестах? Я буду использовать простой пример: чувствительность к регистру. Текущий код чувствителен к регистру. Допустимый вход в метод - «Cat», и он будет возвращать перечисление Animal.Cat. Однако желаемая функциональность метода не должна учитывать регистр символов. Таким …


4
Является ли слежка за проверенным классом плохой практикой?
Я работаю над проектом, в котором внутренние вызовы класса обычны, но в результате получаются простые значения. Пример ( не реальный код ): public boolean findError(Set<Thing1> set1, Set<Thing2> set2) { if (!checkFirstCondition(set1, set2)) { return false; } if (!checkSecondCondition(set1, set2)) { return false; } return true; } Написание модульных тестов для …

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