Файл: Отладка и тестирование программ: основные подходы и ограничения (Введение в тестирование программного обеспечения).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 30.03.2023

Просмотров: 367

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Статические методы включают:

  • ручную прокрутку программы;
  • прокрутку программы программными анализаторами (например, компилятором); автоматизированный анализ программы в этом случае проводится без выполнения ее на ЭВМ и поэтому попадает в категорию «статических»;
  • коллективную проверку программ;
  • проверку программы программистом-технологом с целью выявления и исправления в ней технологических ошибок.

Экспериментально установлено, что в программах ручными методами удается обнаруживать от 30 до 70 % программных и алгоритмических ошибок из общего числа ошибок, выявленных при отладке. При этом одновременно осуществляется доработка программ с целью улучшения их структуры, логики обработки данных и для снижения сложности последующего автоматизированного тестирования на ЭВМ. [15] Основные виды ошибок при отладке ПО показаны на рисунке 4.

Динамические методы связаны со значительным расходом машинного времени и, возможно, не меньшими затратами труда программиста. В этом случае отладка программ происходит совместно с их выполнением на ЭВМ. Динамические методы отладки программ, как правило, привязаны к конкретной ЭВМ и к конкретному транслятору (компилятору). [5]

К динамическим методам относятся:

  • тестирование;
  • поиск ошибок с использованием системных средств;
  • отладка программы в интерактивном режиме.

Важнейшее правило отладки: не делать следующего выхода на ЭВМ, пока не будет разобрана каждая найденная ошибка. Из этого правила существует единственное исключение: если найдены 5—6 ошибок, которые не дают эффекта, то можно сделать новый выход на машину (устранив эти ошибки), чтобы получить эффект в чистом виде (если он есть), поскольку наложение нес­кольких ошибок иногда может дать самый неожиданный результат. [15]

Рисунок 4 – Виды ошибок

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

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


ЗАКЛЮЧЕНИЕ

Целью данной работы было рассмотрение вопросов касательно тестирования программного обеспечения.

В рамках работы решены следующие задачи:

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

В первой главе данной работы были приведены основные понятия и определения в области разработки программного обеспечения.

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

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

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

СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ

  1. Вольфсон Б. Гибкое управление проектами и продуктами. — Питер, 2016. — 160 с.
  2. Джефф Сазерленд Scrum. Революционный метод управления проектами. — Манн, Иванов и Фербер (МИФ), 2014. — 320 с.
  3. Плаксин М. А. Тестирование и отладка программ для профессионалов будущих и настоящих. — Лаборатория знаний, 2015. — 170 с.
  4. Мартин Роберт Идеальный программист. Как стать профессионалом разработки ПО. — Питер, 2011. — 240 с.
  5. Рой Ошероув Искусство автономного тестирования с примерами на C#. — ДМК Пресс, 2014. — 362 с.
  6. Bittner K., Spence I. Managing Iterative Software Development Projects. – Addison Wesley Professional, 2016.
  7. John R. Vacca Computer and Information Security Handbook. — Morgan Kaufmann, 2017. — 1280 p.
  8. Software Testing [Электронный ресурс] Тестирование по фазам и по цепочкам: сходства и различия Режим доступа: http://software-testing.ru/library/testing/general-testing/2682-phased-vs-threaded-testing Дата обращения (07.02.2020)
  9. Блог хост [Электронный ресурс] Анализаторы исходного кода — обзор рынка в России и в мире Режим доступа: https://www.anti-malware.ru/reviews/Code_analyzers_market_overview_Russia_and_world Дата обращения (07.02.2020)
  10. QALight [Электронный ресурс] White/Black/Grey Box-тестирование Режим доступа: https://qalight.com.ua/baza-znaniy/white-black-grey-box-testirovanie/ Дата обращения (07.02.2020)
  11. QALight [Электронный ресурс] Ручное и автоматизированное Режим доступа: https://qalight.com.ua/baza-znaniy/ruchnoe-i-avtomatizirovannoe/ Дата обращения (07.02.2020)
  12. Технология программирования [Электронный ресурс] Методы отладки программного обеспечения. Режим доступа: http://www.tehprog.ru/index.php_page=lecture0113.html Дата обращения (07.02.2020)
  13. QALight [Электронный ресурс] Качество программного обеспечения. Режим доступа: https://qalight.com.ua/baza-znaniy/kachestvo-programmnogo-obespecheniya/ Дата обращения (07.02.2020)
  14. Merehead [Электронный ресурс] Автоматизированное или ручное тестирование – что выбрать? Режим доступа: https://merehead.com/ru/blog/manual-testing-vs-automated-testing-difference-definition-tools/ Дата обращения (07.02.2020)