Учебники

Модульный тест против интеграции

What is the Unit Test?

Unit Tests are conducted by developers and test the unit of code( aka module, component) he or she developed. It is a testing method by which individual units of source code are tested to determine if they are ready to use. It helps to reduce the cost of bug fixes since the bugs are identified during the early phases of the development lifecycle.

What is Integration Test?

Integration testing is executed by testers and tests integration between software modules. It is a software testing technique where individual units of a program are combined and tested as a group. Test stubs and test drivers are used to assist in Integration Testing. Integration test is performed in two way, they are a bottom-up method and the top-down method.

Below is a detailed comparison between the two-

Unit test
Integration test
  • The idea behind Unit Testing is to test each part of the program and show that the individual parts are correct.
  • The idea behind Integration Testing is to combine modules in the application and test as a group to see that they are working fine
  • It can be performed at any time
  • Unit Testing tests only the functionality of the units themselves and may not catch integration errors, or other system-wide issues
  • Integrating testing may detect errors when modules are integrated to build the overall system
  • It starts with the module specification
  • It starts with the interface specification
  • It pays attention to the behavior of single modules
  • Обращает внимание на интеграцию между модулями
  • Модульный тест не проверяет, правильно ли работает ваш код с внешними зависимостями.
  • Интеграционные тесты проверяют правильность работы вашего кода с внешними зависимостями.
  • Обычно выполняется разработчиком
  • Обычно выполняется командой тестирования
  • Найти ошибки легко
  • Найти ошибки сложно
  • Техническое обслуживание юнит-теста дешево
  • Сопровождение интеграционного теста стоит дорого
   

КЛЮЧЕВАЯ РАЗНИЦА

  • Модульное тестирование — это метод тестирования, с помощью которого отдельные блоки исходного кода тестируются, чтобы определить, готовы ли они к использованию, тогда как интеграционное тестирование проверяет интеграцию между программными модулями.
  • Модульное тестирование тестирует каждую часть программы и показывает, что отдельные части являются правильными, тогда как интеграционное тестирование объединяет различные модули в приложении и тестирует в виде группы, чтобы убедиться, что они работают нормально.
  • Модульное тестирование начинается со спецификации модуля, а интеграционное тестирование начинается со спецификации интерфейса.
  • Модульное тестирование может быть выполнено в любое время, с другой стороны, Интеграционное тестирование выполняется после модульного тестирования и перед тестированием системы.
  • Модульное тестирование выполняется разработчиком, а интеграционное тестирование — командой тестирования.
  • Ошибки модульного тестирования можно легко найти, в то время как в тестировании интеграции сложно найти ошибки.
  • Модульное тестирование является своего рода тестом белого ящика, тогда как интеграционное тестирование является своего рода тестом черного ящика.