Тестирование и отладка программного обеспечения.

Заказать уникальную курсовую работу
Тип работы: Курсовая работа
Предмет: Информационные технологии
  • 3030 страниц
  • 7 + 7 источников
  • Добавлена 27.04.2014
800 руб.
  • Содержание
  • Часть работы
  • Список литературы
  • Вопросы/Ответы
ВВЕДЕНИЕ 3
1. ЦЕЛИ И ЗАДАЧИ ТЕСТИРОВАНИЯ И ОТЛАДКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ. 4
2. ВИДЫ ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 6
3. МЕТОДЫ ТЕСТИРОВАНИЯ 21
ЗАКЛЮЧЕНИЕ 27
ГЛОССАРИЙ 28
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ 29
ПРИЛОЖЕНИЯ 30
Фрагмент для ознакомления

МЕТОДЫ ТЕСТИРОВАНИЯИнспекция кодаПри проведении инспекции исходногокода программ выполняется поиск уязвимостей и возможных ошибок только путем анализа исходного кода.Для уменьшения труда экспертов, выполняющихпроверку исходных текстов программного обеспечения, разработчику комплекса следует дать полное описание кода: написать описание классов, функций, написать описание организации кода по модулям и проектам, оказать помощь в компиляции и первоначальной отладки. Возможность самостоятельной компиляции программного обеспечения позволяет группе инспекторов воспользоваться всеми возможностями среды разработки, которую использует разработчик программного обеспечении – контекстной справки о стандартных функциях и классах.Важным моментом для тестирования методом инспекции кода является обеспечение качества кода. Испытателям, проводящих экспертизу, будет намного легче разобраться в исходном коде, если онписался согласно единых стандартовпо оформлению, в коде корректно и интуитивно понятно выбираются названия для классов, констант, методов, переменных и функций, что позволяет определить назначение участка кода, не обращаясь к документации.Основные задачи на этом этапе:поиск уязвимыхи ошибочных мест в коде (поиск уязвимостей и ошибок программирования). Рекомендуется использование автоматизированных программных средств, способствующих обнаружению ошибок, часто такие системы являются частью сред разработки, например, MicrosoftVisualStudio;исследование проблемного места: выявление типа и категории ошибки, ее локализация, разработка предложений по исправлению. Ранжирование проблемных мест, чтобы дать возможность команде разработчиков сформировать стратегию по их исправлению;документирование обнаруженных ошибок.Разбиение на эквивалентные частиЭтот метод разделяет область входящих условийдля системы на классы данных, которые используются в отдельных тестах программного комплекса. Этопозволяетсформировать такие тесты, которые способныобнаружить совершенно новые типы ошибок, тем самым, существенно уменьшая количество тестов, необходимых для проверки работоспособности. Это основано на оценке классов эквивалентности для входящих условий программного комплекса. Класс эквивалентности представляет собой набор правильных и некорректных входящих условий.Классы эквивалентности формируются согласно следующим условий:Если входящее состояние определяется специфическим значением, то одно правильное и два неправильных класса эквивалентности должны быть определены.Если входящее состояние определяется областью данных, то одно правильное и два неправильных класса эквивалентности должны быть определены.Если входящее состояние определяется булевским значением, то один правильный и один неправильный класс эквивалентности должен быть определен.Если входящее состояние определяется членами определенного набора данных, то один правильный и один неправильный класс эквивалентности должны быть определены.Анализ граничных величинС помощью данного метода можно сформировать тесты, которые используют граничные значения входных данных на программный комплекс. Анализ граничных величин существенно дополняет метод разбиения на эквивалентные части, так как использует тесты на границах классов входных условий. Анализ граничных величин выполняется не только для входящих значений, но и для результатов обработки.Правила использования метода анализа граничных величин:Если входящее состояние определяет многими значениями, то тест должен быть разработан так, чтобы использовать минимальное и максимальное количество таких значений и величины, лежащие выше и ниже границ данных.Для входящих значений названных a и b, тесты должны включить значения а и b, значения меньше и больше а и b соответственно.Использование принципов 1 и 2 для выходящих значений.Если внутренняя структура данных имеет заданные границы, то тест должен разрабатываться, чтобы использовать структуру данных и их границы.Вырожденный тест. Этот тест проверяет работу программного комплекса в минимальной степени. Вырожденный тест позволяет испытать правильность выполнения внешних функций программного комплекса, например обращения к ней и получения результата.Тест граничных значений, или "стрессовый тест". Тест контролирует работу программного комплекса для граничных значений свойств, определяющих вычислительный процесс. Часто для граничных значений входных и выходных условий работа программы носит особый характер, который требует особой проработки, во время которых наиболее часто возникают ошибки и сбои программ.Если в качестве примера рассмотреть тестирование подпрограммы сортировки, то нужно исследовать следующие ситуации: сортируемый массив содержит только один элемент; сортируемый массив пуст; массив уже отсортирован. все элементы в сортируемом массиве одинаковы; Проверка в экстремальных условиях - аналогия метода "граничных испытаний". Граничные испытания предоставляют лучшие возможности для сокращения объема испытаний при значительной достоверности результатов испытаний. Практические исследования подтверждают: если программный комплекс работает правильно в граничных условиях, то он с большой вероятностью будет работать без сбоевпри применении обычных значений входных данных. Однако достоверность результатов часто зависит от правильности выбора самих граничных условий. На это влияет объект тестирования. В качестве граничных условий обычно используют следующие элементы:для нецифровых данных (символьных кодов) нулевые коды и некоторые типичные символы;для цифровых данных очень большие, очень маленькие и нулевые значения;для размерностей массивов нулевую (минимальную) размерность и размерность большую, чем объявлено в декларациях.Для правильного выбора граничных значений необходимо тщательно прорабатывать и документировать алгоритма работы программного комплекса. Выходные данные также могут подлежать проверки в граничных случаях. Для этого с помощью подбора варианта входных данных необходимо создать ситуацию, которая вызовет экстремальные выходные значения. В результате проверки в экстремальных условиях подтверждается тот факт, что поля для всех данных имеют размеры, достаточные для реализации функций во всем диапазоне входных данных.Проверка в исключительных ситуациях. Данное тестирование программного обеспечения формирует входные данные, которые лежат не только на граничных значениях, но и выходят за рамки допустимых вариантов. Также возможна проверка работы программного комплекса при его использовании не по прямому назначению. В случае подачи недопустимых данных возможны три варианта развития событий:программа осуществляет непредсказуемые по внешним признакам действия (перестает реагировать на запросы, зависает);неправильные данные воспринимаются как правильные и никаких внешних признаков неверной работы нет; это наихудший случай, так какневерный результат будет преподнесен как возможно правильный;программа сама анализирует неверные данные, делая об этом соответствующие сообщения; это идеальный случай, к которому следует стремиться; для чего в программном комплексе должны быть реализованы фильтры для всех входных условий и средства реагирования на экстремальные ситуации.Для проверки в исключительных экстремальных ситуациях в качестве потоков входных условийчасто используют нестандартные и необычные условия, например, вместо текстового файла в текстовый редактор подставляется двоичный звуковой файл. Либо вместо требуемого внешнего устройства подключить другое устройство. Хороший эффект дает эксплуатация неподготовленным пользователем, который совершает действия, которые кажутся нелогичными для самих разработчиков.ЗАКЛЮЧЕНИЕРассмотренные в работе методы предупреждения и обнаружения ошибок, а также технологии отладки программного обеспечения могут значительно повысить качество разработки программного обеспечения и уменьшить затрачиваемые на проведение отладки временные и материальные ресурсы. Рассмотренные методы без особого труда могут быть использованы в разработке самых разных проектов программного обеспечения, причем полученный опыт сохраняет свою ценность и при реализации различных целевых технологий. Кроме того, они позволяют обеспечить простоту сопровождения, переноса и модификации созданных программ на устройства новых видов. Методы отладки и тестирования дают возможность не только улучшать существующие приложения и процессы разработки программ, но и гарантировать, что с распространением новых устройств уже будет накоплен опыт, достаточный для разработки высокоэффективных приложений для этих технологий причем в соответствии с выделенным бюджетом и вовремя.ГЛОССАРИЙ№ п/пПонятиеОпределение1.Испытание программной продукцииэто определение количественных и/или качественных характеристик свойств продукции при ее функционировании в реальной среде и/или моделировании среды функционирования.2.Отладка программного обеспеченияэто деятельность, направленная на обнаружение и исправление ошибок в программном обеспечении с использованием процессов выполнения его программ.3.Тестирование программного обеспеченияэто процесс выполнения его программ на некотором наборе данных, для которого заранее известен результат применения или известны правила поведения этих программ. 4.Модульное тестированиеэто тестирование программы на уровне отдельно взятых модулей, функций или классов.5.Регрессионное тестированиеэто цикл тестирования, который производится при внесении изменений на фазе системного тестирования или сопровождения продукта.6.Масштабируемостьэто способность системы адаптироваться к расширению предъявляемых требований и росту объемов решаемых задач, наращивать производительность при увеличении нагрузки и добавлении аппаратных ресурсов.7.Интеграционное тестированиеэто тестирование части системы, состоящей из двух и более модулей.СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ1.Пла‏ксин М. Тестирование и отладка‏ программ - для профессионалов будущих и настоящих [текст] / М. Пла‏скин; - Бином. Лаборатория знаний, 2007, - 168 с. ISBN: 978-5-94774-458-32.Пла‏ксин М. Тестирование и отладка‏ программ - для профессионалов будущих и настоящих [текст] / М. Пла‏скин; - Бином. Лаборатория знаний, 2007, - 168 с. ISBN: 978-5-94774-458-33.Википедия — свободная общедоступная многоязычная универсальная энциклопедия [Электронный ресурс] / www.ru.wikipedia.org.4.Спольски Д. Лучшие примеры разработки ПО [текст] / Д. Спольски; - Питер, 2007, 455 с. ISBN: 5-469-01291-3.5.Джеймс Уиттакер, Джейсон Арбон, Джефф Каролло. Как тестируют в Google. – Питер, 2014, 320 с. ISBN: 978-5-496-00893-8, 978-03218030236.Майкл Ховард, Дэвид Лебланк, Джон Виега. 24 смертных греха компьютерной безопасности.- Питер, 2010, 400 с. ISBN: 978-5-49807-747-5, 978-00716267507.Тобиас Клейн. Дневник охотника за ошибками.- ДМК Пресс, 2013, 240с. ISBN: 978-5-94074-374-3ПРИЛОЖЕНИЯABС

1. Пла‏ксин М. Тестирование и отладка‏ программ - для профессионалов будущих и настоящих [текст] / М. Пла‏скин; - Бином. Лаборатория знаний, 2007, - 168 с. ISBN: 978-5-94774-458-3
2. Пла‏ксин М. Тестирование и отладка‏ программ - для профессионалов будущих и настоящих [текст] / М. Пла‏скин; - Бином. Лаборатория знаний, 2007, - 168 с. ISBN: 978-5-94774-458-3
3. Википедия — свободная общедоступная многоязычная универсальная энциклопедия [Электронный ресурс] / www.ru.wikipedia.org.

4. Спольски Д. Лучшие примеры разработки ПО [текст] / Д. Спольски; - Питер, 2007, 455 с. ISBN: 5-469-01291-3.
5. Джеймс Уиттакер, Джейсон Арбон, Джефф Каролло. Как тестируют в Google. – Питер, 2014, 320 с. ISBN: 978-5-496-00893-8, 978-0321803023
6. Майкл Ховард, Дэвид Лебланк, Джон Виега. 24 смертных греха компьютерной безопасности.- Питер, 2010, 400 с. ISBN: 978-5-49807-747-5, 978-0071626750
7. Тобиас Клейн. Дневник охотника за ошибками.- ДМК Пресс, 2013, 240с. ISBN: 978-5-94074-374-3

Вопрос-ответ:

Зачем нужно тестирование и отладка программного обеспечения?

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

Какие цели и задачи ставятся перед тестированием и отладкой программного обеспечения?

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

Какие виды тестирования программного обеспечения существуют?

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

Что такое инспекция кода и как она выполняется?

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

Какими методами можно провести тестирование программного обеспечения?

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

Какие цели и задачи имеют тестирование и отладка программного обеспечения?

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

Какие виды тестирования программного обеспечения существуют?

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

Что такое инспекция кода и как она проводится?

Инспекция кода - это процесс поиска уязвимостей и возможных ошибок в исходном коде программы. Она проводится путем анализа и проверки исходного текста программы. Этот метод позволяет экспертам проверить код на наличие ошибок и недочетов, что помогает повысить качество и надежность программного обеспечения.