Скачать презентацию Курс Основы тестирования ПО Докучаев Сергей Руководитель Скачать презентацию Курс Основы тестирования ПО Докучаев Сергей Руководитель

Докучаев. Основы тестирования ПО.pptx

  • Количество слайдов: 30

Курс «Основы тестирования ПО» Докучаев Сергей / Руководитель отдела нефункционального тестирования Тензор, 2014 1 Курс «Основы тестирования ПО» Докучаев Сергей / Руководитель отдела нефункционального тестирования Тензор, 2014 1

Цена ошибки Ariane-5 /1996/ 500 000 $ Therac-25 / 1985 / 3 человека Mizuho Цена ошибки Ariane-5 /1996/ 500 000 $ Therac-25 / 1985 / 3 человека Mizuho Financial Group Banking System / 2002 / > 10 миллиардов $ Northeast blackout / 2003 / 45 миллионов остались без света 2

История Отладочное тестирование (до 1956 года) • понятия «тестирование» не существует • программисты занимаются История Отладочное тестирование (до 1956 года) • понятия «тестирование» не существует • программисты занимаются отладкой 3

История Демонстрационное тестирование (1957 -1978) • разделение отладки и тестирования • первая команда по История Демонстрационное тестирование (1957 -1978) • разделение отладки и тестирования • первая команда по тестированию ПО • таблицы принятия решений, мутационное тестирование , закон надёжности • первый симпозиум • кривая стоимости исправления ошибки • decision-to-decision path, state-transition testing • измерение покрытия кода 4

История Деструкционное тестирование (1979 -1982) • «Искусство тестирования программ» Глена Майерса • черный ящик История Деструкционное тестирование (1979 -1982) • «Искусство тестирования программ» Глена Майерса • черный ящик • тестирование - как процесс нахождения ошибок 5

История Оценочное тестирование (1983 -1987) • первая международная конференция • Auto. Tester • Девид История Оценочное тестирование (1983 -1987) • первая международная конференция • Auto. Tester • Девид Гелперин и Уильям Хетцел создают организацию SQE • usecase 6

История Профилактическое тестирование (с 1988 -го года) • Кем Канер «Тестирование ПО» и исследовательское История Профилактическое тестирование (с 1988 -го года) • Кем Канер «Тестирование ПО» и исследовательское тестирование • первый багтрекер, Load. Runner, Silk. Test • фаззинг-тестирование • Борис Бейзер «Техники тестирования ПО» , классификация ошибок, эффект пестицида • ISO 9126 • новостные ленты, начинают выходить журналы, бум методов (списочный, дерево принятия решений) • Джеймс Бах – эвристическая модель тестирования • Девид Коэн – комбинаторное тестирование 7

История Профилактическое тестирование (с 1988 -го года) • Джеймс Бах «Контекстное тестирование» , «Тестирование История Профилактическое тестирование (с 1988 -го года) • Джеймс Бах «Контекстное тестирование» , «Тестирование на основе сессий» , etc. • первая сертификация • Bug. Zilla, Jmeter, Quick. Test, IBM Rational, JIRA • Дороти Грэхем, Марки Фьюстер «Автоматизация тестирования ПО» • 2002 – ISTQB • TDD • Selenium, Soap. UI • тестирование как сервис, краудсорс utest. com • эра конференций, блогов, подкастов, сообществ 8

Терминология Что такое ошибка? 9 Терминология Что такое ошибка? 9

Терминология Что такое ошибка? Ошибка - это разница между вычисленным, наблюдаемым или измеренным значением Терминология Что такое ошибка? Ошибка - это разница между вычисленным, наблюдаемым или измеренным значением или условием и истинным, заданным или теоретически корректным значением или условием 10

Терминология Что такое качество? 11 Терминология Что такое качество? 11

Терминология Что такое качество? • Качество - Степень, с которой компонент, система или процесс Терминология Что такое качество? • Качество - Степень, с которой компонент, система или процесс соответствует зафиксированным требованиям и/или ожиданиям и нуждам пользователя или заказчика. 12

Терминология Что такое качество? • Качество - Степень, с которой компонент, система или процесс Терминология Что такое качество? • Качество - Степень, с которой компонент, система или процесс соответствует зафиксированным требованиям и/или ожиданиям и нуждам пользователя или заказчика. 13

Терминология Что такое тестирование? 14 Терминология Что такое тестирование? 14

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

Терминология Тестирование vs валидация vs верификация? 16 Терминология Тестирование vs валидация vs верификация? 16

Терминология Тестирование vs валидация vs верификация? Верификация — подтверждение на основе представления объективных свидетельств Терминология Тестирование vs валидация vs верификация? Верификация — подтверждение на основе представления объективных свидетельств того, что установленные требования были выполнены Валидация — подтверждение на основе представления объективных свидетельств того, что требования, предназначенные для конкретного использования или применения, выполнены 17

Терминология Тест-план — Документ, описывающий цели, подходы, ресурсы и график запланированных тестовых активностей. Он Терминология Тест-план — Документ, описывающий цели, подходы, ресурсы и график запланированных тестовых активностей. Он определяет объекты тестирования, свойства для тестирования, задания, ответственных за задания, степень независимости каждого тестировщика, тестовое окружение, метод проектирования тестов, определяет используемые критерии входа и критерии выхода и причины их выбора, а также любые риски, требующие планирования на случай чрезвычайных обстоятельств. 18

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

Концепция полного тестировани calc(x: int, y: int) - покрыть юнит-тестами данную функцию ||(X, Y)|| Концепция полного тестировани calc(x: int, y: int) - покрыть юнит-тестами данную функцию ||(X, Y)|| = 2 64 На 1 Гц машине потребуется 3 K лет, что бы прогнать все тесты, если он будет состоять из 100 команд протестировать кроссбраузерность сайта: (Виды ОС) x (версии ОС) x (виды браузеров) x (версии браузеров) x (плагины) x (настройки) … 20

Концепция полного тестировани Полное тестирование – невозможно. 21 Концепция полного тестировани Полное тестирование – невозможно. 21

Методы тестирования 1. Черный ящик 2. Белый ящик 3. Серый ящик 22 Методы тестирования 1. Черный ящик 2. Белый ящик 3. Серый ящик 22

Уровни тестирования 1. юнит-тестирование 2. интеграционное тестирование 3. Тестирование интерфейса компонент 4. системное тестирование Уровни тестирования 1. юнит-тестирование 2. интеграционное тестирование 3. Тестирование интерфейса компонент 4. системное тестирование 23

По объекту 1. функциональное 2. тестирование производительности 3. юзабилити тестирование 4. тестирование UI 5. По объекту 1. функциональное 2. тестирование производительности 3. юзабилити тестирование 4. тестирование UI 5. тестирование безопасности 6. тестирование локализации 7. тестирование совместимости 24

По степени автоматизации 1. автоматизированное 2. ручное 3. гибридное 25 По степени автоматизации 1. автоматизированное 2. ручное 3. гибридное 25

По времени проведения 1. Альфа-тестирование: 1. 2. санитарное 3. тестирование нового функционала 4. подтверждающее По времени проведения 1. Альфа-тестирование: 1. 2. санитарное 3. тестирование нового функционала 4. подтверждающее тестирование 5. регрессионное тестирование 6. 2. дымное приемочное тестирование Бета-тестирование 26

Признак позитивности сценария 1. Позитивный тест 2. Негативный тест 27 Признак позитивности сценария 1. Позитивный тест 2. Негативный тест 27

Степень подготовленности 1. По документации 2. Ad hoc, интуитивное 28 Степень подготовленности 1. По документации 2. Ad hoc, интуитивное 28

Вопросы? Вопросы?

Спасибо за терпение! Разработка СБИС Спасибо за терпение! Разработка СБИС