Основы тестирования ПО презентация

Содержание

Слайд 2

Программа семинара

Что такое тестирование?
Характеристики качества и виды контроля качества
Классификации тестирования
по уровням
по целям
«чёрное и

белое»

Программа семинара Что такое тестирование? Характеристики качества и виды контроля качества Классификации тестирования

Слайд 3

Что такое тестирование?

Что такое тестирование?

Слайд 4

Тестирование – это…

… не разработка
… не анализ
… не управление
… не техписательство
… не
… не

не

Тестирование – это… … не разработка … не анализ … не управление …

Слайд 5

Тестирование – это

предоставление отрицательной обратной связи

Тестирование – это предоставление отрицательной обратной связи

Слайд 6

Положительная и отрицательная обратная связь

Положительная и отрицательная обратная связь

Слайд 7

Тестирование – QC – QA

Quality Assurance
Обеспечение качества

Quality Control
Контроль качества

Тестирование

Тестирование – QC – QA Quality Assurance Обеспечение качества Quality Control Контроль качества Тестирование

Слайд 8

История определений

Процесс выполнения программы с намерением найти ошибки. [Г.Майерс. Надежность программного обеспечения. М:Мир,

1980]
Процесс наблюдения за выполнением программы в специальных условиях и вынесения на этой основе оценки каких-либо ее аспектов. [ANSI/IEEE standard 610.12-1990: Glossary of SE Terminology. NY:IEEE, 1987]
Это не действие. Это интеллектуальная дисциплина, имеющая целью получение надежного программного обеспечения без излишних усилий на его проверку. [B. Beizer. Software Testing Techniques, Second Edition. NY:van Nostrand Reinhold, 1990]
Техническое исследование программы для получения информации о ее качестве с точки зрения определенного круга заинтересованных лиц. [С. Kaner, 1999]
Проверка соответствия между реальным поведением программы и ее ожидаемым поведением на конечном наборе тестов, выбранном определенным образом. [IEEE Guide to Software Engineering Body of Knowledge, SWEBOK, 2004]

1980

1987

1990

1999

2004

История определений Процесс выполнения программы с намерением найти ошибки. [Г.Майерс. Надежность программного обеспечения.

Слайд 9

Рабочее определение №1

Тестирование – это
проверка соответствия программы требованиям,
осуществляемая путём наблюдения за её работой
в

специальных, искусственно созданных ситуациях, выбранных определённым образом

Рабочее определение №1 Тестирование – это проверка соответствия программы требованиям, осуществляемая путём наблюдения

Слайд 10

Схема тестирования

Программа

Информация о
несоответствиях

Требования

Схема тестирования Программа Информация о несоответствиях Требования

Слайд 11

Определение по SWEBOK

Тестирование – это
проверка соответствия
между реальным поведением программы и ее ожидаемым поведением
на

конечном наборе тестов, выбранном определенным образом
SWEBOK, 2004

Определение по SWEBOK Тестирование – это проверка соответствия между реальным поведением программы и

Слайд 12

Определение по SWEBOK

Тестирование – это
проверка соответствия
между реальным поведением программы и ее ожидаемым поведением
на

конечном наборе тестов, выбранном определенным образом
SWEBOK, 2004

Определение по SWEBOK Тестирование – это проверка соответствия между реальным поведением программы и

Слайд 13

Определение по SWEBOK

Тестирование – это
проверка соответствия
между реальным поведением программы и ее ожидаемым поведением
на

ограниченном наборе тестов, выбранном определенным образом
SWEBOK, 2004

Определение по SWEBOK Тестирование – это проверка соответствия между реальным поведением программы и

Слайд 14

Рабочее определение №1 (повтор)

Тестирование – это
проверка соответствия программы требованиям,
осуществляемая путём наблюдения за её

работой
в специальных, искусственно созданных ситуациях, выбранных определённым образом

Рабочее определение №1 (повтор) Тестирование – это проверка соответствия программы требованиям, осуществляемая путём

Слайд 15

Рабочее определение №2

Тест – это
специальная, искусственно созданная ситуация, выбранная определённым образом,
и описание

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

Рабочее определение №2 Тест – это специальная, искусственно созданная ситуация, выбранная определённым образом,

Слайд 16

Тестировщик:
Управляет выполнением программы, создаёт искусственные ситуации
Наблюдает поведение программы и сравнивает наблюдаемое поведение с

ожидаемым

Тестировщик: Управляет выполнением программы, создаёт искусственные ситуации Наблюдает поведение программы и сравнивает наблюдаемое поведение с ожидаемым

Слайд 17

Основные задачи тестирования
Что подать на вход?
стимулы
Что ожидается на выходе?
реакции
оракул

Основные задачи тестирования Что подать на вход? стимулы Что ожидается на выходе? реакции оракул

Слайд 18

Входы и выходы

Входы и выходы

Слайд 19

Входы и выходы

Программа

Входы и выходы Программа

Слайд 20

Разновидности входов и выходов

Пользовательский интерфейс (UI)
Программный интерфейс (API)
Сетевой протокол
Файловая система
Состояние окружения
События

Разновидности входов и выходов Пользовательский интерфейс (UI) Программный интерфейс (API) Сетевой протокол Файловая

Слайд 21

Характеристики качества и виды контроля качества

Характеристики качества и виды контроля качества

Слайд 22

Аспекты качества

Стандарт ISO 9126
Функциональность
Надёжность
Практичность
Эффективность
Сопровождаемость
Переносимость

Аспекты качества Стандарт ISO 9126 Функциональность Надёжность Практичность Эффективность Сопровождаемость Переносимость

Слайд 23

1 - Функциональность

Пригодность к использованию (suitability)
Точность, правильность (accuracy)
Способность к взаимодействию (interoperability)
Соответствие стандартам и

правилам (compliance)
Защищенность (security)

1 - Функциональность Пригодность к использованию (suitability) Точность, правильность (accuracy) Способность к взаимодействию

Слайд 24

2 - Надёжность

Зрелость, завершенность (обратна к частоте отказов) (maturity)
Устойчивость к отказам (fault tolerance)
Способность

к восстановлению работоспособности при отказах (recoverability)

2 - Надёжность Зрелость, завершенность (обратна к частоте отказов) (maturity) Устойчивость к отказам

Слайд 25

3 - Практичность

Понятность (understandability)
Удобство обучения (learnability)
Работоспособность (operability)
Привлекательность (attractiveness)

3 - Практичность Понятность (understandability) Удобство обучения (learnability) Работоспособность (operability) Привлекательность (attractiveness)

Слайд 26

4 - Эффективность

Временные характеристики (time behaviour)
Использование ресурсов (resource utilisation)

4 - Эффективность Временные характеристики (time behaviour) Использование ресурсов (resource utilisation)

Слайд 27

5 - Сопровождаемость

Анализируемость (analyzability)
Изменяемость, удобство внесения изменений (changeability)
Риск возникновения неожиданных эффектов при внесении

изменений (stability)
Контролируемость , удобство проверки (testability)

5 - Сопровождаемость Анализируемость (analyzability) Изменяемость, удобство внесения изменений (changeability) Риск возникновения неожиданных

Слайд 28

6 - Переносимость

Адаптируемость (adaptability)
Устанавливаемость, удобство установки (installability)
Способность к сосуществованию с другим ПО (coexistence)
Удобство

замены другого ПО данным (replaceability)

6 - Переносимость Адаптируемость (adaptability) Устанавливаемость, удобство установки (installability) Способность к сосуществованию с

Слайд 29

Тестирование:

функциональности
надёжности
эффективности
практичности
сопровождаемости
переносимости

Тестирование: функциональности надёжности эффективности практичности сопровождаемости переносимости …

Слайд 30

Различные классификации видов тестирования

Различные классификации видов тестирования

Слайд 31

Уровни тестирования

Модульное
Интеграционное
Системное

Уровни тестирования Модульное Интеграционное Системное

Слайд 32

Приложение-матрёшка

КИС

Веб-приложение

Клиентская
часть

Серверная часть

JS library

Сервер приложений

База
данных

Stored
proc

Stored
proc

JS func

JS library

JS func

library

class

class

method

method

method

method

Приложение-матрёшка КИС Веб-приложение Клиентская часть Серверная часть JS library Сервер приложений База данных

Слайд 33

Тестирование бывает:

Модульное
Интеграционное
Системное

функциональности
надёжности
эффективности
практичности
сопровождаемости
мобильности

Тестирование бывает: Модульное Интеграционное Системное функциональности надёжности эффективности практичности сопровождаемости мобильности

Слайд 34

Тестирование бывает:

Тестирование бывает:

Слайд 35

Чёрное и белое

Чёрное и белое

Слайд 36

Рабочее определение

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

искусственно созданных ситуациях , выбранных определённым образом

Рабочее определение Тестирование – это проверка соответствия программы требованиям, осуществляемая путём наблюдения за

Слайд 37

Слайд 38

No more bugs found, boss!

No more bugs found, boss!

Слайд 39

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

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

Слайд 40

Чёрное и белое

Чёрное и белое

Слайд 41

Чёрное

Полностью покрыты все …
… входные данные
… комбинации входных данных
… последовательности комбинаций входных данных

Чёрное Полностью покрыты все … … входные данные … комбинации входных данных …

Слайд 42

Белое

Полностью покрыты все …
… строки кода программы
… ветви в коде программы
… пути в

коде программы

Белое Полностью покрыты все … … строки кода программы … ветви в коде

Слайд 43

Приложение-матрёшка

КИС

Веб-приложение

Клиентская
часть

Серверная часть

JS library

Сервер
приложений

База
данных

пакет

library

JS library

library

library

Веб-сервис

Приложение

База данных

Чужое
приложение

Приложение-матрёшка КИС Веб-приложение Клиентская часть Серверная часть JS library Сервер приложений База данных

Слайд 44

Разноцветные ящики

Разноцветные ящики

Имя файла: Основы-тестирования-ПО.pptx
Количество просмотров: 112
Количество скачиваний: 0