Что такое модульное тестирование?

Я не согласен с Дэном (хотя unit-tests лучше просто не отвечать)... но...

Модульное unittest тестирование — это процесс unittest написания кода для проверки unit-tests поведения и функциональности unit-test вашей системы.

Очевидно, что unit-testing тесты улучшают качество вашего unit-test кода, но это лишь внешнее unit-tests преимущество модульного тестирования. Реальные unit-tests преимущества заключаются unittest в следующем:

  1. Упростите изменение технической реализации, убедившись, что вы не меняете поведение (рефакторинг). Надлежащим образом прошедший модульное тестирование код может быть подвергнут агрессивному рефакторингу/очистке с небольшим шансом сломать что-либо, не заметив этого.
  2. Дайте разработчикам уверенность при добавлении поведения или внесении исправлений.
  3. Задокументируйте свой код
  4. Укажите области вашего кода, которые тесно связаны. Трудно тестировать модульный код, который тесно связан
  5. Обеспечьте средства для использования вашего API и своевременно выявляйте трудности
  6. Указывает на методы и классы, которые не очень связаны

Вы должны проводить unit-tests модульное тестирование, потому unit-tests что в ваших интересах предоставить unit-testing вашему клиенту удобный и unit-tests качественный продукт.

Я предлагаю unittest вам использовать его для unit-test любой системы или части системы, которая unit-test моделирует поведение в реальном unittest мире. Другими словами, он unittest особенно хорошо подходит unit-test для развития предприятий. Я unittest бы не стал использовать его unittest для одноразовых / служебных unit-tests программ. Я бы не стал использовать unittest его для частей системы, которые unit-testing проблематично протестировать unit-tests (частым примером является unit-testing пользовательский интерфейс, но unit-testing это не всегда так)

Самая большая unit-testing ошибка заключается в том, что unittest разработчики тестируют слишком unit-tests большую единицу или считают unit-testing метод единицей. Это особенно unit-tests верно, если вы не понимаете unit-testing Inversion of Control — в этом случае ваши модульные unit-test тесты всегда будут превращаться unit-testing в сквозное интеграционное unit-testing тестирование. Модульный тест unittest должен проверять индивидуальное unittest поведение, а у большинства unit-tests методов есть много вариантов unittest поведения.

Величайшее заблуждение unit-testing состоит в том, что программисты unittest не должны тестировать. В unit-testing это верят только плохие или unit-tests ленивые программисты. Разве unittest парень, строящий вашу крышу, не unit-test должен ее проверить? Должен unit-test ли врач, заменяющий сердечный unit-test клапан, не проверять новый unit-test клапан? Только программист unit-tests может проверить, делает ли unit-test его код то, для чего он предназначен unittest (QA может тестировать пограничные unit-tests случаи — как ведет себя код, когда unittest ему говорят делать то, чего unit-testing программист не планировал, и unit-test клиент может провести приемочное unit-test тестирование — выполняет unit-test ли код свои действия). то, что unittest клиент заплатил за это, чтобы unit-tests сделать)

unit-testing

2022-11-05T00:18:10+00:00
Вопросы с похожей тематикой, как у вопроса:

Что такое модульное тестирование?