 Цели тестирования 
 Основные понятия 
 Виды тестирования 
 Основные подходы и методологии
 Выполнить оценку качества ПО 
• Проверить соответствие требованиям 
 Убедиться, что ПО выполняет то, что должно (!!!) 
 Убедиться, что ПО не выполняет то, чего не должно (!!) 
• Обнаружить как можно больше ошибок в ПО
 Предоставить информацию 
• КОМУ: 
 Test Manager 
 Project Manager 
 Developers 
 Product owner 
 Others: testers, tech-writers, analysts, etc. 
• ЧТО: 
 Имеющиеся несоответствия 
 Рекомендации к исправлению 
 Рекомендации к усовершенствованию 
• КАК: 
 Bug-tracker 
 Отчеты: E-mail, Meetings
 Тестирование 
• процесс исследования программного обеспечения (ПО) 
с целью получения информации о качестве продукта 
 Тест /тест-кейс 
• испытание, проверка 
• набор входных данных, последовательности 
действий и ожидаемых результатов, позволяющий 
выполнить проверку функции и выявить имеющиеся 
ошибки 
 Ошибка 
• несоответствие ожидаемому результату
Надёжност 
ь 
Сопровождае 
мость 
Практич- 
ность 
Функцио- 
нальность 
Эффективност 
ь 
Мобиль- 
ность
 Стратегия «Черный ящик» 
• Нет информации о том, как система реализована 
• Проверка поведения системы на соответствие 
требованиям 
 Стратегия «Белый ящик» 
• Покрыть весь программный код 
• Каждая строчка кода должна выполнится хотя 
бы раз
 Статическое: 
• Инспекции кода, сквозные просмотры, анализ 
документации и т.д. 
 Динамическое 
• Исполнение программы с целью оценки ее 
качества: все остальное
Quality Assurance 
Обеспечение качества 
Quality Control 
Тестирование 
(Контроль качества) 
Динамическое тестирование 
(Тестирование)
По объекту тестирования 
 Функциональное 
 Positive 
 Negative 
 Нефункциональное 
• Юзабилити 
• Нагрузочное 
• Производительности 
• Стресс тестирование 
• Тестирование стабильности, надежности, 
безопасности
По времени проведения тестирования 
 Альфа-тестирование (alpha testing) 
• Тестирование при приёмке (smoke testing) 
• Тестирование новой функциональности (new 
feature testing) 
• Регрессионное тестирование (regression testing) 
• Тестирование при сдаче (acceptance testing) 
 Бета-тестирование (beta testing)
По степени изолированности компонентов 
 Модульное (компонентное) тестирование 
• (component/unit testing) 
 Интеграционное тестирование 
• (integration testing) 
 Системное тестирование 
• (system/end-to-end testing)
По степени автоматизации 
 Ручное тестирование 
• (manual testing) 
 Автоматизированное тестирование 
• (automated testing) 
 Полуавтоматизированное тестирование 
• (semiautomated testing)
По степени подготовленности к тестированию 
 Тестирование по документации 
• (formal testing) 
 Тестирование ad hoc или интуитивное 
тестирование 
• (ad hoc testing) 
 Исследовательское тестирование 
• (exploratory testing)
Test Manager / 
Team Lead 
Планирование и 
контроль 
Анализ и 
проектировани 
е 
Test designer 
Tester 
выполнение 
тестов 
Оценка 
критериев 
выхода и 
отчетность 
Tester + Test 
manager / Team 
Lead 
Test manager / 
Team Lead 
Завершение 
тестовой 
деятельности
 «Это не баг, это фича» 
• это не ошибка, это предусмотренная 
особенность работы программы. 
 Авторское право: 
• ПО = текстовым публикациям 
• => ошибка в программе юридически является 
всего лишь мнением автора
 Г. Майерс «Искусство тестирования 
программ» 
 Р. Савин «Тестирование .СОМ» 
 Сэм Канер “Тестирование программного 
обеспечения. Фундаментальные 
концепции менеджмента бизнес- 
приложений”

02ka-nov

  • 2.
     Цели тестирования  Основные понятия  Виды тестирования  Основные подходы и методологии
  • 3.
     Выполнить оценкукачества ПО • Проверить соответствие требованиям  Убедиться, что ПО выполняет то, что должно (!!!)  Убедиться, что ПО не выполняет то, чего не должно (!!) • Обнаружить как можно больше ошибок в ПО
  • 4.
     Предоставить информацию • КОМУ:  Test Manager  Project Manager  Developers  Product owner  Others: testers, tech-writers, analysts, etc. • ЧТО:  Имеющиеся несоответствия  Рекомендации к исправлению  Рекомендации к усовершенствованию • КАК:  Bug-tracker  Отчеты: E-mail, Meetings
  • 5.
     Тестирование •процесс исследования программного обеспечения (ПО) с целью получения информации о качестве продукта  Тест /тест-кейс • испытание, проверка • набор входных данных, последовательности действий и ожидаемых результатов, позволяющий выполнить проверку функции и выявить имеющиеся ошибки  Ошибка • несоответствие ожидаемому результату
  • 6.
    Надёжност ь Сопровождае мость Практич- ность Функцио- нальность Эффективност ь Мобиль- ность
  • 7.
     Стратегия «Черныйящик» • Нет информации о том, как система реализована • Проверка поведения системы на соответствие требованиям  Стратегия «Белый ящик» • Покрыть весь программный код • Каждая строчка кода должна выполнится хотя бы раз
  • 8.
     Статическое: •Инспекции кода, сквозные просмотры, анализ документации и т.д.  Динамическое • Исполнение программы с целью оценки ее качества: все остальное
  • 9.
    Quality Assurance Обеспечениекачества Quality Control Тестирование (Контроль качества) Динамическое тестирование (Тестирование)
  • 10.
    По объекту тестирования  Функциональное  Positive  Negative  Нефункциональное • Юзабилити • Нагрузочное • Производительности • Стресс тестирование • Тестирование стабильности, надежности, безопасности
  • 11.
    По времени проведениятестирования  Альфа-тестирование (alpha testing) • Тестирование при приёмке (smoke testing) • Тестирование новой функциональности (new feature testing) • Регрессионное тестирование (regression testing) • Тестирование при сдаче (acceptance testing)  Бета-тестирование (beta testing)
  • 12.
    По степени изолированностикомпонентов  Модульное (компонентное) тестирование • (component/unit testing)  Интеграционное тестирование • (integration testing)  Системное тестирование • (system/end-to-end testing)
  • 13.
    По степени автоматизации  Ручное тестирование • (manual testing)  Автоматизированное тестирование • (automated testing)  Полуавтоматизированное тестирование • (semiautomated testing)
  • 14.
    По степени подготовленностик тестированию  Тестирование по документации • (formal testing)  Тестирование ad hoc или интуитивное тестирование • (ad hoc testing)  Исследовательское тестирование • (exploratory testing)
  • 15.
    Test Manager / Team Lead Планирование и контроль Анализ и проектировани е Test designer Tester выполнение тестов Оценка критериев выхода и отчетность Tester + Test manager / Team Lead Test manager / Team Lead Завершение тестовой деятельности
  • 16.
     «Это небаг, это фича» • это не ошибка, это предусмотренная особенность работы программы.  Авторское право: • ПО = текстовым публикациям • => ошибка в программе юридически является всего лишь мнением автора
  • 17.
     Г. Майерс«Искусство тестирования программ»  Р. Савин «Тестирование .СОМ»  Сэм Канер “Тестирование программного обеспечения. Фундаментальные концепции менеджмента бизнес- приложений”