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

В этом руководстве представлены семь основных принципов тестирования программного обеспечения, которые должен знать каждый тестировщик программного обеспечения и специалист по обеспечению качества.

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

1) Исчерпывающее тестирование невозможно.
2) Дефект ClusterИНГ
3) Парадокс пестицидов
4) Тестирование показывает наличие дефектов.
5) Отсутствие ошибки – заблуждение.
6) Раннее тестирование
7) Тестирование зависит от контекста

 

Давайте изучим принципы тестирования со следующей статьей:wing пример видео

Нажмите здесь если видео недоступно

проверка данных

Важно, чтобы при проведении тестирования программного обеспечения вы добивались оптимальных результатов тестирования, не отклоняясь от цели. Но как ты определишь, что ты следуешьwing правильная стратегия тестирования? Для этого вам необходимо придерживаться некоторых основных принципов тестирования. Вот семь общих принципов тестирования, которые широко практикуются в индустрии программного обеспечения.

Чтобы понять это, рассмотрим сценарий, в котором вы перемещаете файл из папки А в папку Б.

Подумайте обо всех возможных способах проверить это.

Помимо обычных сценариев, вы также можете протестировать следующиеwing Условия

  • Попытка переместить файл, когда он открыт
  • У вас нет прав безопасности для вставки файла в папку B.
  • Папка B находится на общем диске, и емкость хранилища заполнена.
  • В папке B уже есть файл с таким именем, по сути список бесконечен
  • Или предположим, что у вас есть 15 полей ввода для проверки, каждое из которых имеет 5 возможных значений, количество проверяемых комбинаций будет 5 ^ 15.

Если бы вам пришлось протестировать все возможные комбинации, ВРЕМЯ И ЗАТРАТЫ ВЫПОЛНЕНИЯ проекта выросли бы в геометрической прогрессии. Нам нужны определенные принципы и стратегии для оптимизации усилий по тестированию.

Вот 7 принципов:

1) Исчерпывающее тестирование невозможно.

Да! Полное тестирование невозможно. Вместо этого нам нужен оптимальный объем тестирования, основанный на оценке рисков приложения.

И вопрос на миллион долларов заключается в том, как определить этот риск?

Чтобы ответить на этот вопрос, давайте выполним упражнение

По вашему мнению, какой operaция, скорее всего, станет причиной вашего Operaсистема может дать сбой?

Я уверен, что большинство из вас догадались: одновременно открыть 10 разных приложений.

Итак, если вы тестировали это OperaПри настройке системы вы поймете, что дефекты, скорее всего, будут обнаружены в многозадачной деятельности и их необходимо тщательно протестировать, что подводит нас к следующему принципу. дефект ClusterИНГ

2) Дефект ClusterИНГ

дефект Clustering, в котором говорится, что небольшое количество модулей содержит большую часть обнаруженных дефектов. Это применение принципа Парето к тестированию программного обеспечения: примерно 80% проблем обнаруживаются в 20% модулей.

Опытным путем можно выявить такие рискованные модули. Но у этого подхода есть свои проблемы

Если одни и те же тесты повторяются снова и снова, в конечном итоге одни и те же тестовые примеры перестанут обнаруживать новые ошибки.

3) Парадокс пестицидов

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

Чтобы преодолеть эту проблему, тестовые примеры необходимо регулярно пересматривать и пересматривать, добавляя новые и различные тестовые примеры, чтобы помочь найти больше дефектов.

Тестировщики не могут просто полагаться на существующие методы тестирования. Он должен постоянно стремиться улучшить существующие методы, чтобы сделать тестирование более эффективным. Но даже после всей этой тяжелой работы по тестированию вы никогда не сможете заявить, что ваш продукт не содержит ошибок. Чтобы прояснить эту мысль, давайте посмотрим это видео публичного запуска Windows 98

Вы думаете, что такая компания, как MICROSOFT не стали бы тщательно тестировать свою ОС и рисковали бы своей репутацией только для того, чтобы увидеть сбой своей ОС во время ее публичного запуска!

4) Тестирование показывает наличие дефектов.

Следовательно, принцип тестирования гласит: Тестирование говорит о наличии дефектов и не говорит об отсутствии дефектов. т.е. Тестирование программного обеспечения снижает вероятность того, что в программном обеспечении останутся необнаруженные дефекты, но даже если дефекты не обнаружены, это не является доказательством правильности.

Но что, если вы приложите максимум усилий, примете все меры предосторожности и сделаете свой программный продукт на 99% свободным от ошибок. И программное обеспечение не отвечает потребностям и требованиям клиентов.

Это подводит нас к следующему принципу, который гласит: Отсутствие ошибок.

5) Отсутствие ошибки – заблуждение.

Вполне возможно, что программное обеспечение, которое на 99% не содержит ошибок, все еще непригодно для использования. Это может произойти в том случае, если система тщательно тестируется на предмет неправильного требования. Тестирование программного обеспечения — это не просто поиск дефектов, но и проверка того, что программное обеспечение соответствует потребностям бизнеса. Отсутствие ошибки является заблуждением, т.е. поиск и исправление дефектов не поможет, если сборка системы непригодна для использования и не соответствует потребностям и требованиям пользователя.

Чтобы решить эту проблему, следующий принцип тестирования гласит: раннее тестирование.

6) Раннее тестирование

Раннее тестирование. Тестирование следует начинать как можно раньше в жизненном цикле разработки программного обеспечения. Таким образом, любые дефекты в требованиях или на этапе проектирования выявляются на ранних стадиях. Гораздо дешевле исправить Дефект на ранних стадиях тестирования. Но как рано начинать тестирование? Рекомендуется начинать поиск ошибки с момента определения требований. Подробнее об этом принципе см. later обучающее пособие.

7) Тестирование зависит от контекста

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

Миф: «Принципы предназначены только для справки. Я не буду использовать их на практике».

Это очень неправда. Принципы тестирования помогут вам создать эффективную Стратегия тестирования и набросайте тестовые примеры по обнаружению ошибок.

Но изучение принципов тестирования похоже на первое обучение вождению.

Изначально, пока вы учитесь водить машину, вы обращаете внимание на все и вся, например, на передачу. shifts, скорость, управляемость сцепления и т. д. Но с опытом вы просто сосредотачиваетесь на вождении, все остальное приходит само собой. Такие, что вы даже поддерживаете разговоры с другими пассажирами в машине.

То же самое относится и к принципам тестирования. Опытные тестировщики усвоили эти принципы до такого уровня, что могут применять их, даже не задумываясь. Следовательно, миф о том, что эти принципы не используются на практике, просто не соответствует действительности.