Помощь в написании студенческих работ
Антистрессовый сервис

Тестирование и отладка программ: виды тестирования, тестирование надежности, организация процесса тестирования. 
Финишные этапы разработки программных систем

Курсовая Купить готовую Узнать стоимостьмоей работы

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

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

Содержание

  • Введение
  • 1. Общая характеристика задач тестирования программных продуктов
  • 2. Виды тестирования программных продуктов
  • 3. Характеристика уровней тестирования ПО
  • Заключение
  • Список использованных источников

Обычно выполняется вручную.

3.Характеристика уровней тестирования ПОТестирование на различных уровнях проводится на протяжении всего жизненного цикла разработки и сопровождения ПО. Уровень проведения тестирования определяет объекты тестирования: отдельные модули, группы модулей или системой в целом. Реализация тестирования на всех уровнях системы является залогом успешности реализации и сдачи проекта. К уровням тестирования относят следующие категории [3]: Компонентное или Модульное тестирование (ComponentTestingorUnit Testing) Интеграционное тестирование (Integration Testing) Системное тестирование (SystemTesting)Приемочное тестирование (AcceptanceTesting)На рисунках 5−6 приведены диаграммы уровней тестирования. Рисунок 5 — Диаграмма уровней тестирования.

Рисунок 6 — Диаграмма уровней тестирования.

В рамках проведения компонентного (модульного) тестирования производится проверка функциональности и поиск дефектов в доступных частях ПО, которые возможно протестировать по-отдельности (модули программ, наборы объектов, классов, функций и др.). Как правило, проведение компонентного (модульного) тестирования осуществляется с вызовом кода, который необходимо протестироватьс поддержкой сред разработки, таких как фреймворки (frameworks — каркасы) для модульного тестирования или инструменты для отладки. Исправление всех найденныхдефектов, как правило, производится в коде без формального их описания в системе менеджмента багов (BugTrackingSystem).Одним из наиболее эффективных подходов к компонентному (модульному) тестированию являетсяподготовка автоматизированных тестовперед началом основного кодирования (разработки) программного обеспечения. Это называется разработка от тестирования (test-drivendevelopment) или подход тестирования вначале (testfirstapproach). В рамках данного подхода производится создание и интеграция небольших кусков кода, напротив которых осуществляется запуск тестов, написанных до начала кодирования. Разработка производится до успешного прохождения всех тестов. Интеграционное тестирование используется для проверки связи между компонентами, а также взаимодействия с различными компонентами системы (операционной системой, оборудованием либо связи между различными системами).На рисунке 7 показана диаграмма интеграционного тестирования. Рисунок 7 — Диаграмма интеграционного тестирования.

Уровнями интеграционного тестирования являются [3]: — Компонентный интеграционный уровень (ComponentIntegrationtesting) На данном уровне проводится проверка взаимодействия между компонентами системы после проведения компонентного тестирования.

Системный интеграционный уровень (SystemIntegrationTesting) Проводится проверка взаимодействия между разными системами после проведения системного тестирования. Рассмотрим подходы к интеграционному тестированию.

1.Снизувверх (Bottom Up Integration) Все низкоуровневые модули, процедуры или функции собираются воедино и затем тестируются. После чего собирается следующий уровень модулей для проведения интеграционного тестирования. Данный подход считается полезным, если все или практически все модули, разрабатываемого уровня, готовы. Также данный подход помогает определить по результатам тестирования уровень готовности приложения 2. Сверхувниз (TopDownIntegration) На первом этапе проводится тестирование всех высокоуровневых модулей, и далее один за другим проводится добавление низкоуровневых. Все модули более низкого уровня симулируются заглушками с аналогичной функциональностью, затем по мере готовности они заменяются реальными активными компонентами. Таким образом мы проводим тестирование сверху вниз. 3. Большойвзрыв («BigBang» Integration) Все или практически все разработанные модули собираются вместе в виде законченной системы или ее основной части, и затем проводится интеграционное тестирование.

Такой подход очень хорош для сохранения времени. При этом, если тест кейсы и их результаты записаны с ошибками, то реализация процесса интеграции значительно осложнится, что будет являться преградой для команды тестировщиков при достижении основной цели интеграционного тестирования. Основной задачей системного тестирования является проверка как функциональных, так и не функциональных требований в системе в целом. При этом выявляются дефекты, такие как неверное использование ресурсов системы, непредусмотренные комбинации данных пользовательского уровня, несовместимость с окружением, непредусмотренные сценарии использования, отсутствующая или неверная функциональность, неудобство использования и т. д. Для минимизации рисков, связанных с особенностями поведения в системы в той или иной среде, во время тестирования рекомендуется использовать окружение максимально приближенное к тому, на которое будет установлен продукт после выдачи. Определяют следующие подходы к проведению системного тестирования [4]: — на основе требований Для каждого требования проводится запись тестовых случаев (testcases) для проверки выполнения данного требования.

на базе вариантов использования На основании представления о вариантах использования продукта создаются случаи использования системы (UseCases). По конкретному варианту использования можно определяется один или несколько сценариев. Для проверки каждого из сценариев проводится разработка тест кейсов (testcases), которые должны быть протестированы. Формальный процесс тестирования, который проводит проверку соответствия системы требованиям и проводится в целях [2]: Определение на соответствие системы приемочным критериям; Вынесение решения заказчиком или другим уполномоченным лицом решения о приемке приложения. Приемочное тестирование производится на основании набора типичных тестовых наборов и сценариев, которые разрабатываются на основании требований к тестируемому приложению. Решение о проведении приемочного тестирования принимается, когда:

продукт достиг необходимого уровня качества;

— произведено ознакомление заказчика с Планом Приемочных Работ (ProductAcceptancePlan) или иным документом, где описан набор действий, связанных с проведением приемочного тестирования, дата проведения, ответственные и т. д. Фаза приемочного тестирования длится до тех пор, пока заказчик не выносит решение об отправлении приложения на доработку или выдаче приложения.

Заключение

.

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

Время;

— Бюджет;

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

проведен анализ технологий тестирования и отладки ПО;

— проведено определение видов тестирования;

— проведено определение уровней тестирования ПО;

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

Список использованных источников

.

Законодательные акты.

ГОСТ Р ИСО/МЭК 12 207−99. Процессы жизненного цикла программных средств ГОСТ 34.603−92 Информационная технология. Виды испытаний автоматизированных систем.

Электронные ресурсы.

Виды тестирования программного обеспечения. [Электронный ресурс]. Режим доступа:

http://www.protesting.ru/testing/testtypes.htmlМетоды тестирования программного обеспечения. [Электронный ресурс]. Режим доступа:

http://juice-health.ru/program/software-testing/495-software-testing-methodsТестирование программного обеспечения. [Электронный ресурс]. Режим доступа:

https://social.msdn.microsoft.com/Forums/ru-RU/e750a78b-0c1f-4766−81a2−7cea9b4b3ea2/-?forum=fordesktopruИсточники на русском языке.

Котляров, В. П. Основы тестирования ПО/В.П. Котляров. — М: Гелиос АРВ, 2007. — 424с. Винниченко И. В. Автоматизация процессов тестирования. М.: ИНТУИТ.ру, 2014. — 235с. Партыка, Т. Л. Информационная безопасность: Учебное пособие / Т. Л. Партыка, И. И. Попов.

— М.: Форум, 2012. — 432 c. Берг, Д. Б. Модели жизненного цикла/ Д. Б. Берг, Е. А.

Ульянова, П. В. Добряк. — М.: Лит.

Рес, 2014. — 351с. Романов, А. А., Васильев Г.

А., Поляков В. А. Разработка программных продуктов продукта/А.А.Романов, Г. А. Васильев, В. А. Поляков. М.: Вузовский учебник, Инфра-М — Москва, 2012.

— 256 c. Рудаков, А. В., Технология разработки программных продуктов. Практикум/ А. В. Рудаков.

— М.: Академия — Москва, 2012. — 192 c. Солонина, А. И.

Основы цифровой обработки сигналов. Курс лекций/ А. И. Солонина, Д. А. Улахович, С. М. Арбузов. — СПб.:БХВ-Петербург — 2012. — 768 c. Гамма, Э.

Приемы объектно-ориентированного программирования/ Э.Гамма. — СПб.: Питер, 2012. — 366 с. Акимов, П. А. Информатика и прикладная математика. Учебное пособие / П. А. Акимов, А. М. Белостоцкий, Т. Б. Кайтуков и др. — М.: АСВ, 2016.

— 588 c. Белов, В. В. Программирование в Delphi: процедурное, объектно-ориентированное, визуальное: Учебное пособие для вузов / В. В. Белов, В. И. Чистякова. — М.: РиС, 2014.

— 240 c. Юдин, Д. Б. Задачи и методы стохастического программирования / Д. Б. Юдин.

— М.: Красанд, 2012. — 394 c. Окулов, С. М. Основы программирования, перераб / С. М. Окулов. — М.: Бином, 2015. — 336 c. Окулов, С. М. Основы программирования / С. М. Окулов.

— М.: Бином. Лаборатория знаний, 2012. — 336 c. Семакин, И. Г. Основы алгоритмизации и программирования: Учебник для студ. учреждений сред.

проф. образования / И. Г. Семакин, А. П. Шестаков. — М.: ИЦ Академия, 2012. ;

400 c. Семакин, И. Г. Основы алгоритмизации и программирования. Практикум: Учебное пос. для студ. учреждений сред. проф. образования / И. Г. Семакин, А. П. Шестаков. ;

М.: ИЦ Академия, 2013. — 144 c.

Показать весь текст

Список литературы

  1. Законодательные акты
  2. ГОСТ Р ИСО/МЭК 12 207−99. Процессы жизненного цикла программных средств
  3. Виды тестирования программного обеспечения. [Электронный ресурс]. Режим доступа: http://www.protesting.ru/testing/testtypes.html
  4. Методы тестирования программного обеспечения. [Электронный ресурс]. Режим доступа: http://juice-health.ru/program/software-testing/495-software-testing-methods
  5. Тестирование программного обеспечения. [Электронный ресурс]. Режим доступа: https://social.msdn.microsoft.com/Forums/ru-RU/e750a78b-0c1f-4766−81a2−7cea9b4b3ea2/-?forum=fordesktopru
  6. Источники на русском языке
  7. , В.П. Основы тестирования ПО/В.П. Котляров. — М: Гелиос АРВ, 2007. — 424с.
  8. И.В. Автоматизация процессов тестирования. М.: ИНТУИТ.ру, 2014. — 235 с.
  9. , Т.Л. Информационная безопасность: Учебное пособие / Т. Л. Партыка, И. И. Попов. — М.: Форум, 2012. — 432 c.
  10. , Д.Б. Модели жизненного цикла/ Д. Б. Берг, Е. А. Ульянова, П. В. Добряк. — М.: ЛитРес, 2014. — 351с.
  11. , А. А., Васильев Г. А., Поляков В. А. Разработка программных продуктов продукта/А.А.Романов, Г. А. Васильев, В. А. Поляков. М.: Вузовский учебник, Инфра-М — Москва, 2012. — 256 c.
  12. , А. В., Технология разработки программных продуктов. Практикум/ А. В. Рудаков. — М.: Академия — Москва, 2012. — 192 c.
  13. , А. И. Основы цифровой обработки сигналов. Курс лекций/ А. И. Солонина, Д. А. Улахович, С. М. Арбузов. — СПб.: БХВ-Петербург — 2012. — 768 c.
  14. , Э. Приемы объектно-ориентированного программирования/ Э.Гамма. — СПб.: Питер, 2012. — 366 с.
  15. , П.А. Информатика и прикладная математика.Учебное пособие / П. А. Акимов, А. М. Белостоцкий, Т. Б. Кайтуков и др. — М.: АСВ, 2016. — 588 c.
  16. , В.В. Программирование в Delphi: процедурное, объектно-ориентированное, визуальное: Учебное пособие для вузов / В. В. Белов, В. И. Чистякова. — М.: РиС, 2014. — 240 c.
  17. , Д. Б. Задачи и методы стохастического программирования / Д. Б. Юдин. — М.: Красанд, 2012. — 394 c.
  18. , С.М. Основы программирования, перераб / С. М. Окулов. — М.: Бином, 2015. — 336 c.
  19. , С.М. Основы программирования / С. М. Окулов. — М.: Бином. Лаборатория знаний, 2012. — 336 c.
  20. , И.Г. Основы алгоритмизации и программирования: Учебник для студ. учреждений сред. проф. образования / И. Г. Семакин, А. П. Шестаков. — М.: ИЦ Академия, 2012. — 400 c.
  21. , И.Г. Основы алгоритмизации и программирования. Практикум: Учебное пос. для студ. учреждений сред. проф. образования / И. Г. Семакин, А. П. Шестаков. — М.: ИЦ Академия, 2013. — 144 c.
Заполнить форму текущей работой
Купить готовую работу

ИЛИ