Содержание курса
МДК.01.02 Поддержка и тестирование программных модулей
Содержание урока:

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

Полное или исчерпывающее тестирование невозможно выполнить. Тестирование всегда проводится на выборочной основе. Отбор тестовых данных требует хорошего владения методами отбора тестовых данных. В этом типе тестирования для выполнения теста используются все вероятные комбинации данных. Таким образом, пользователи могут найти ресурс программного обеспечения и проверить его на наличие экстремальных ситуаций. Например, рассмотрим приложение с 10 полями ввода, каждое из которых может иметь шесть возможных значений. Для того, чтобы провести исчерпывающее тестирование, количество комбинаций составляет 6^10 тестов. Ситуация усугубляется, когда нужно проводить тестирование в разных средах. Это непрактично, не выполняется в приложениях для тестирования в реальном времени и имеет только теоретическое значение. Вместо того, чтобы проверять каждую из комбинаций, пользователь может назначить риск и приоритет для выполнения тестирования. Тестировщик должен уделять внимание как техническим, так и бизнес-рискам, связанным с ограничениями проекта, такими как время и бюджет. Оценка рисков должна быть проведена на начальном этапе, чтобы понять необходимый уровень тестирования. Деятельность по тестированию должна быть в состоянии предоставить клиентам достаточно подробностей для принятия решения о выпуске продукта.

Почему исчерпывающее тестирование нецелесообразно?

  1. Тестировщики должны работать в сжатые сроки, а также выполнять другие действия по тестированию, помимо выполнения тестов. Сжатые сроки никогда не позволят тестировщикам провести исчерпывающее тестирование.
  2. Программы также могут иметь большее количество состояний. Ограничения по времени — еще одно ограничение исчерпывающего тестирования. Т.е. входные данные, которые действительны в определенный момент времени, могут быть недействительными в другое время.
  3. Исчерпывающее тестирование требует проверки всей вероятной продолжительности времени, в течение которого каждый пользователь может работать с AUT. Это утомительная задача, которую невозможно выполнить.
  4. Более того, дизайн может быть слишком сложным для выполнения тестов.
  5. Невозможно протестировать все вероятные среды выполнения тестов AUT. Это становится еще более сложным, если AUT зависит от сценариев реального времени, таких как температура, давление и тому подобное.
  6. Невозможно проверить все вероятные выходы или последовательность операций с помощью исчерпывающего тестирования.
  7. Невозможно выполнить исчерпывающее тестирование, проверяя различные комбинации типов пользователей и количество пользователей.

Тем не менее, тестировщики могут оптимизировать выполнение тестов, придерживаясь следующих рекомендаций: Несмотря на то, что тестирование, выполняемое тестировщиками, является исчерпывающим, иногда приложение дает сбой из-за поломки кода во время изменения сборки и некоторых бизнес-сценариев, что приводит к дефектам UAT. Это приведет к снижению индекса удовлетворенности клиентов (CSI). Чтобы решить эту проблему, необходимо следовать некоторым специальным исчерпывающим процессам или стратегиям для повышения производительности тестирования.

Преимущества следования стратегии исчерпывающего тестирования:

  1. Снижение объема ручного труда
  2. Больше тестов в соответствии с бизнес-требованиями
  3. Улучшенное использование ресурсов автоматизации
  4. Это гарантирует, что высокоприоритетные задачи будут проверены
  5. Это помогает экономить время и усилия на доработку
  6. Улучшение индекса удовлетворенности клиентов (CSI)
  7. Количество дефектов UAT будет сокращено, а также приведет к продуктивным показателям тестирования
  8. При повторном тестировании проверка других соответствующих сценариев также может выявить новые дефекты
  9. Улучшенное исчерпывающее тестирование может быть выполнено с меньшими ручными усилиями

Процесс, который может быть использован для оптимизации тестирования:

  1. Исчерпывающее тестирование может быть реализовано путем сосредоточения внимания на критических сценариях при каждом изменении сборки с помощью автоматизации.
  2. Команда контроля качества должна работать над другими соответствующими сценариями при повторном тестировании проблемы.
  3. Команда контроля качества также должна убедиться, что специальное тестирование выполняется в бизнес-сценариях в конце выполнения системного теста.
  4. Тестировщики также должны расставлять приоритеты тестовых случаев и выполнять сценарии с высоким приоритетом в первую неделю тестирования системы.
  5. Тестирование работоспособности необходимо выполнять во время изменений в сборке или среде.
  6. Стабильная среда должна быть доступна для выполнения тестового примера.
  7. Особое внимание следует уделять тому, чтобы тестовые сценарии были точными, краткими и эффективными.
  8. Коллеги, бизнес-аналитики и другие соответствующие пользователи должны ознакомиться с набором тестов.
  9. Тестировщик также должен уделять особое внимание созданию новых тестовых случаев или обновлению существующих тестовых случаев при подтверждении новых ошибок.
  10. Конфигурационные данные, входные/выходные тестовые данные должны быть четко указаны.
  11. Сосредоточьтесь на стратегиях тестирования, таких как тестирование OATS, которое помогает оптимизировать тестирование и охватить широкий спектр тестовых данных.