Программная инженерия | Семь принципов тестирования программного обеспечения

Опубликовано: 28 Января, 2022

Тестирование программного обеспечения - это процесс выполнения программы с целью поиска ошибки. Чтобы наше программное обеспечение работало хорошо, оно не должно содержать ошибок. Если тестирование будет выполнено успешно, оно удалит все ошибки из программного обеспечения.

В тестировании программного обеспечения есть семь принципов:

  1. Тестирование показывает наличие дефектов
  2. Исчерпывающее тестирование невозможно
  3. Раннее тестирование
  4. Кластеризация дефектов
  5. Парадокс пестицидов
  6. Тестирование зависит от контекста
  7. Ошибка отсутствия ошибок
  • Тестирование показывает наличие дефектов: цель тестирования программного обеспечения - вывести его из строя. Тестирование программного обеспечения снижает наличие дефектов. Тестирование программного обеспечения говорит о наличии дефектов и не говорит об отсутствии дефектов. Тестирование программного обеспечения может гарантировать наличие дефектов, но не может доказать, что программное обеспечение не содержит дефектов. Даже многократное тестирование никогда не может гарантировать, что программное обеспечение на 100% не содержит ошибок. Тестирование может уменьшить количество дефектов, но не устраняет все дефекты.
  • Исчерпывающее тестирование невозможно: это процесс тестирования функциональности программного обеспечения на всех возможных входных данных (действительных или недействительных), а предварительные условия известны как исчерпывающее тестирование. Исчерпывающее тестирование невозможно, это означает, что программное обеспечение никогда не сможет тестировать все тесты. Он может тестировать только некоторые тестовые примеры и предполагать, что программное обеспечение является правильным, и будет выдавать правильный результат во всех тестовых случаях. Если программное обеспечение будет проверять все тестовые примеры, это потребует дополнительных затрат, усилий и т. Д., А это непрактично.
  • Раннее тестирование: чтобы найти дефект в программном обеспечении, необходимо начать раннее тестирование. Дефект, обнаруженный на ранних этапах SDLC, будет стоить намного дешевле. Для повышения производительности программного обеспечения тестирование программного обеспечения начнется на начальном этапе, т.е. тестирование будет выполняться на этапе анализа требований.
  • Кластеризация дефектов: в проекте небольшое количество модулей может содержать большинство дефектов. Принцип Парето для тестирования программного обеспечения гласит, что 80% дефектов программного обеспечения происходит из 20% модулей.
  • Парадокс пестицидов: повторение одних и тех же тестовых примеров снова и снова не приведет к обнаружению новых ошибок. Поэтому необходимо просмотреть тестовые примеры и добавить или обновить тестовые примеры, чтобы найти новые ошибки.
  • Тестирование зависит от контекста: подход к тестированию зависит от контекста разрабатываемого программного обеспечения. Различные типы программного обеспечения должны выполнять разные типы тестирования. Например, тестирование сайта электронной коммерции отличается от тестирования приложения для Android.
  • Ошибка отсутствия ошибок: если созданное программное обеспечение на 99% не содержит ошибок, но не соответствует требованиям пользователя, оно непригодно для использования. Не только необходимо, чтобы программное обеспечение на 99% не содержало ошибок, но и обязательно выполнять все требования клиентов.

Вниманию читателя! Не переставай учиться сейчас. Получите все важные концепции теории CS для собеседований SDE с курсом теории CS по доступной для студентов цене и будьте готовы к отрасли.