Тестирование ПО. Фундаментальная теория

Содержание

Слайд 2

Определение Тестирование – это процесс анализа программного обеспечения, направленный на выявление

Определение

Тестирование – это процесс анализа программного обеспечения, направленный на выявление отличий

между реально существующими и требуемыми свойствами, а так же на оценку свойств ПО.
Качество программного обеспечения (Software Quality) — это совокупность характеристик программного обеспечения, относящихся к его способности удовлетворять установленные и предполагаемые потребности
Слайд 3

Тестировщик – это… Название профессии происходит от английского слова test, что

Тестировщик – это…

Название профессии происходит от английского слова test, что в

переводе значит «испытание, проверка». Этот cпециалист занимается функциональным тестированием IT-продуктов, сопровождением их на этапе разработки и в процессе запуска.
Разрабатывая собственный сценарий тестирования, он проверяет одни и те же процессы в различных условиях и с разными настройками.
Организуя пользовательский алгоритм поведения, специалист выступает в роли эксперта по обнаружению ошибок и сбоев.
В России нет ВУЗов, которые обучают данной профессии, поэтому функции тестировщика с успехом могут выполнять люди с аналитическим складом ума и высшим техническим или средним специальным образованием. 
Слайд 4

Цели тестирования Повысить вероятность того, что приложение, предназначенное для тестирования, будет

Цели тестирования

Повысить вероятность того, что приложение, предназначенное для тестирования, будет работать

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

Дефект (он же баг) Дефект (он же баг) – это несоответствие

Дефект (он же баг)

Дефект (он же баг) – это несоответствие фактического результата

выполнения программы ожидаемому результату. Дефекты обнаруживаются на этапе тестирования ПО, когда тестировщик проводит сравнение полученных результатов работы программы (компонента или дизайна) с ожидаемым результатом, описанным в спецификации требований.
Баги имеют приоритеты, которые помогают структурировать процесс их исправления:
Блокирующий(Blocker) – дальнейшая работа с системой невозможна
Критический (Critical) - неправильно работающая ключевая бизнес логика, дыра в системе безопасности, проблема, приведшая к временному падению сервера или приводящая в нерабочее состояние некоторую часть системы
Значительный(Major) - ошибка не критична или есть возможность для работы с тестируемой функцией, используя другие входные точки.
Незначительный (Minor) - Незначительная ошибка, не нарушающая бизнес логику тестируемой части приложения, очевидная проблема пользовательского интерфейса.
Тривиальный(Trivial) -  плохо воспроизводимая проблема, малозаметная посредствам пользовательского интерфейса,
Слайд 6

Виды тестирования Функциональные виды тестирования – тестирование ПО в целях проверки

Виды тестирования

Функциональные виды тестирования – тестирование ПО в целях проверки реализуемости

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

Функциональные виды тестирования… Включают в себя: - проверку интерфейса на соответствие

Функциональные виды тестирования…

Включают в себя:
- проверку интерфейса на соответствие требованиям (размер,

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

Нефункциональные виды тестирования… Включают в себя: Нагрузочное – имитация работы определенного

Нефункциональные виды тестирования…

Включают в себя:
Нагрузочное – имитация работы определенного количества пользователей
Стрессовое

- в условиях повышения интенсивности операций или аварийного изменения конфигурации сервера + оценка способности к регенерации
Объемное – при увеличении объемов данных в БД
Т. стабильности – длительная загрузка среднего уровня
Т. установки – проверка успешной инсталляции, настройки и удаления ПО
Т. удобства использования – понятность интерфейса для пользователя
Т. на отказ и восстановление – способность противостоять сбоям
Конфигурационное – при различных конфигурациях компьютеров, поддерживаемых драйверов и на заявленных платформах
Слайд 9

Связанные с изменениями виды тестирования… Включают в себя: Дымовое – проверка

Связанные с изменениями виды тестирования…

Включают в себя:
Дымовое – проверка основного функционала
Регрессионное

– проверка изменений для подтверждения факта работоспособности (изменения не вызвали новых багов)
Повторное – проверка исправления багов для подтверждения исправления
Т. сборки – определение соответствия выпущенной версии критериям качества, установленным в начале тестирования
Санитарное – доказательство того, что конкретная функция работает согласно заявленным требованиям
Слайд 10

Немного истории… 9 сентября 1945 г. женщина-программист Грейс Мюррей Хоппер нашла

Немного истории…

9 сентября 1945 г. женщина-программист Грейс Мюррей Хоппер нашла мотылька,

застрявшего между контактами электромеханического реле в Mark II Aiken Relay Calculator, выявив и устранив тем самым неисправность. Несчастный мотылек был вклеен в технический дневник с сопроводительной надписью: «First actual case of bug being found» (Первая фактическая ошибка (насекомое) была найдена). В России день 9 сентября неофициально считается Днем Тестировщика.
Слайд 11