Обычное тестирование против объектно-ориентированного тестирования
Тестирование программного обеспечения - один из важнейших шагов в процессе разработки программного обеспечения. Тестирование программного обеспечения позволяет убедиться, что разработанное программное обеспечение удовлетворяет всем требованиям заказчика и работает без ошибок. По мере того, как парадигмы и методы разработки программного обеспечения сместились от первоначальной каскадной разработки программного обеспечения к OOD / Agile и другим новым концепциям, тестирование также сместилось с обычного (традиционного) тестирования на объектно-ориентированное тестирование (OOT). Но поскольку каскадная разработка все еще используется, тестировщики все еще используют обычное тестирование.
Что такое обычное тестирование?
Обычный процесс тестирования имеет место в основном, когда жизненный цикл водопада используется для разработки программного обеспечения в организациях. Обычное тестирование всегда проводится на этапе тестирования жизненного цикла, который обычно следует за этапом разработки и переходит к этапу реализации. На этом этапе тестирования будут проводиться в основном три вида тестирования. Системное тестирование позволит убедиться, что системные функции удовлетворяют требованиям заказчика, задокументированным в SRS (Спецификация требований к программному обеспечению), обычно с использованием подхода черного ящика. Интеграционное тестирование проверяет предварительный проект, используя функциональный и декомпозиционный подход. Интеграционное тестирование основано на структуре проекта с использованием подхода «сверху вниз» или «снизу вверх». Наконец, модульные тесты проверяют правильность детального проекта.
Что такое объектно-ориентированное тестирование?
Использование объектно-ориентированного анализа и проектирования вместе с Agile и другими новейшими методологиями разработки программного обеспечения приводит к объектно-ориентированному тестированию. ОО-разработка обычно ориентирована на поведение. Тестирование проводится с упором на композицию. Это означает, что дизайн создается по частям и составляется вместе, чтобы завершить всю систему. Поскольку сегодня для объектно-ориентированной разработки используются быстрое прототипирование и некоторая форма инкрементального подхода, три обычных уровня тестирования (системное, интеграционное и модульное тестирование) четко не видны в объектно-ориентированном проектировании (но в большинстве случаев они существуют). Системное тестирование (в рамках объектно-ориентированного тестирования) будет во многом использовать тот же подход (черный ящик), что и обычное тестирование, и будет проверять спецификацию требований (поскольку требования должны проверяться независимо от процесса разработки). Модульное тестирование в рамках объектно-ориентированного тестирования похоже на обычное модульное тестирование, но основное отличие заключается в определении используемого модуля. В настоящее время принятые единицы, используемые для модульного тестирования, - это классы и методы.
В чем разница между обычным тестированием и объектно-ориентированным тестированием?
Традиционное тестирование - это традиционный подход к тестированию, которое в основном проводится, когда для разработки используется жизненный цикл водопада, в то время как объектно-ориентированное тестирование используется, когда объектно-ориентированный анализ и дизайн используются для разработки корпоративного программного обеспечения. Обычное тестирование больше фокусируется на декомпозиции и функциональных подходах, в отличие от объектно-ориентированного тестирования, в котором используется композиция. Три уровня тестирования (система, интеграция, модуль), используемые в обычном тестировании, четко не определены, когда дело доходит до объектно-ориентированного тестирования. Основная причина этого в том, что объектно-ориентированная разработка использует инкрементный подход, тогда как традиционная разработка следует последовательному подходу. Что касается модульного тестирования, объектно-ориентированное тестирование рассматривает гораздо меньшие по размеру модули по сравнению с обычным тестированием.