Слайд 2Тестирование программного обеспечения
Что такое тестирование, основные понятия.
Программные ошибки, документирование и анализ
Разновидности тестирования
![Тестирование программного обеспечения Что такое тестирование, основные понятия. Программные ошибки, документирование и](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-1.jpg)
и их роль в процессе разработки ПО
Тест-план. Для чего нужен тест-план, какие тесты должен включать?
Анализ ПО. Приоритеты тестирования.
Слайд 3Что такое тестирование?
Основные понятия
Заблуждения при тестировании:
Нельзя полностью протестировать продукт
Невозможно проверить реакцию
![Что такое тестирование? Основные понятия Заблуждения при тестировании: Нельзя полностью протестировать продукт](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-2.jpg)
программы на каждую комбинацию входных данных
Невозможно проверить все способы редактирования данных
Невозможно проверить реакцию программы на ввод данных в каждый момент ее работы (окружение)
Невозможно проверить каждую возможность выполнения команд программы
Невозможно выявить все ошибки проектирования
Тестирование – проверка правильности программы?
Невозможно проверить, что программа работает правильно
Слайд 4Что такое тестирование?
Основные понятия
Цель тестирования:
Программу тестируют для того, чтобы найти в
![Что такое тестирование? Основные понятия Цель тестирования: Программу тестируют для того, чтобы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-3.jpg)
ней ошибки
Ошибки ищут для того, чтобы их исправить
Повышение надежности программы как основной составляющей ее качества
Повышение качества программы:
Качество – точное соответствие программы спецификации клиента?
Качество программы определятся возможностями, благодаря которым она понравиться пользователю, а также недостатками, которые вынуждают его приобрести другую программу
Слайд 5Программные ошибки, документирование и анализ
Что является ошибкой в программе:
Расхождение между программой и
![Программные ошибки, документирование и анализ Что является ошибкой в программе: Расхождение между](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-4.jpg)
спецификацией
Программа не делает того, чего пользователь от нее вполне обоснованно ожидает
Слайд 6Программные ошибки, документирование и анализ
Категории программных ошибок:
Ошибки пользовательского интерфейса
Ошибки функционала
Взаимодействие программы с
![Программные ошибки, документирование и анализ Категории программных ошибок: Ошибки пользовательского интерфейса Ошибки](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-5.jpg)
пользователем
Организация программы
Пропущенные команды
Производительность
Выходные данные
Обработка ошибок
Алгоритмический ошибки (вычисления, потоки, гонки, перегрузки)
Контроль версий
Документация
Слайд 7Программные ошибки, документирование и анализ
![Программные ошибки, документирование и анализ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-6.jpg)
Слайд 8Программные ошибки, документирование и анализ
Каким должен быть отчет об ошибке:
Простота
Понятность
Воспроизводимость
Беспристрастность
![Программные ошибки, документирование и анализ Каким должен быть отчет об ошибке: Простота Понятность Воспроизводимость Беспристрастность](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-7.jpg)
Слайд 9Программные ошибки, документирование и анализ
Анализ воспроизводимой ошибки:
Выявить все наиболее серьезные последствия проблемы
Найти
![Программные ошибки, документирование и анализ Анализ воспроизводимой ошибки: Выявить все наиболее серьезные](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-8.jpg)
простейший и кратчайший путь воспроизведения ошибки
Найти альтернативные действия, приводящие к такому же результату
Выявить связанные проблемы
Слайд 10Разновидности тестирования и их роль в процессе разработки ПО
Этапы разработки ПО:
Планирование
Анализ требований
![Разновидности тестирования и их роль в процессе разработки ПО Этапы разработки ПО:](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-9.jpg)
(3%)
Спецификация (3%)
Проектирование (5%)
Кодирование и написание документации (7%)
Тестирование и исправление ошибок (15%)
Поддержка и сопровождение (67%)
Чем раньше найти и исправить ошибку, тем дешевле это обойдется!
Слайд 11Разновидности тестирования и их роль в процессе разработки ПО
Тестирование на этапе планирования:
Что
![Разновидности тестирования и их роль в процессе разработки ПО Тестирование на этапе](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-10.jpg)
тестируется:
Идеи
Кто тестирует:
Отдел маркетинга
Руководители проекта
Аналитики
Архитекторы
Специалисты по анализу человеческого фактора
Слайд 12Разновидности тестирования и их роль в процессе разработки ПО
Тестирование на этапе планирования:
Основные
![Разновидности тестирования и их роль в процессе разработки ПО Тестирование на этапе](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-11.jpg)
вопросы:
Адекватны ли требования?
Полны ли они?
Совместимы ли требования между собой?
Выполнимы ли?
Разумны ли они?
Сравнительный анализ существующих продуктов
Дискуссионные группы
Слайд 13Разновидности тестирования и их роль в процессе разработки ПО
Тестирование на этапе проектирования:
Что
![Разновидности тестирования и их роль в процессе разработки ПО Тестирование на этапе](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-12.jpg)
тестируется:
Идеи, более формализованы
Проектная документация
Кто тестирует:
Аналитики
Архитекторы (в основном решение проблем)
Слайд 14Разновидности тестирования и их роль в процессе разработки ПО
Тестирование на этапе проектирования:
Основные
![Разновидности тестирования и их роль в процессе разработки ПО Тестирование на этапе](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-13.jpg)
вопросы:
Действительно ли проект хорош?
Соответствует ли проект требованиям?
Полон ли проект?
Достаточно ли он реалистичен?
Хорошо ли описана (продумана, спроектирована) в проекте подсистема обработки ошибок?!
Совещание аналитиков:
Обзорное совещание
Инспекционное совещание
Рецензионное совещание
Слайд 15Разновидности тестирования и их роль в процессе разработки ПО
Разновидности тестирования:
Тестирование «Стеклянного ящика»:
Преимущества:
Направленность
![Разновидности тестирования и их роль в процессе разработки ПО Разновидности тестирования: Тестирование](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-14.jpg)
тестирования
Полный охват кода
Управление потоком
Отслеживание целостности данных
Структурное тестирование:
Тестирование программных путей, критерии охвата
Модульное тестирование, нисходящее и восходящее тестирование
Статическое тестирование и динамическое
Псевдоотладка и мутационное тестирование
Анализ производительности
Регрессионное тестирование
Слайд 16Разновидности тестирования и их роль в процессе разработки ПО
Разновидности тестирования:
Тестирование «Черного ящика»:
Приемочное
![Разновидности тестирования и их роль в процессе разработки ПО Разновидности тестирования: Тестирование](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-15.jpg)
тестирование
Функциональное тестирование:
Сверка со спецификацией
Граничные условия
Производительность
Переходы между режимами
Эксплуатация в реальном режиме
Нагрузочное тестирование (максимальной объем входных данных, многозадачность, многопользовательский режим)
Обработка ошибок
Защита
Совместимость и преобразование форматов
Эффектные тесты
Слайд 17Разновидности тестирования и их роль в процессе разработки ПО
Разновидности тестирования:
Тестирование «Черного ящика»:
Системное
![Разновидности тестирования и их роль в процессе разработки ПО Разновидности тестирования: Тестирование](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-16.jpg)
тестирование:
Аппаратные конфигурации
Тип ОС
Формат дисков
Клавиатура
Установка
Интерфейс
Установка и обслуживание
Слайд 18Тест-план. Для чего нужен тест-план, какие тесты должен включать?
Для чего нужен тест-план?
Организация
![Тест-план. Для чего нужен тест-план, какие тесты должен включать? Для чего нужен](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-17.jpg)
тестирования
Обеспечить полноту охвата продукта
Избежать лишних повторений и не забыть ничего важного
Повышение эффективности тестирования (сходные тесты, сокращение количества тестов без потери охвата тестирования)
Организация сотрудников
Совместное обдумывание стратегии тестирования
Обсуждение объема тестирования
Обсуждение глубины тестирования и календарного плана работ
Слайд 19Тест-план. Для чего нужен тест-план, какие тесты должен включать?
Для чего нужен тест-план?
Представляет
![Тест-план. Для чего нужен тест-план, какие тесты должен включать? Для чего нужен](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-18.jpg)
собой удобную структуру для планирования и управления тестирование
Оценка ресурсов
Организация
Координирование
Выявление недостатков тест-плана
Слайд 20Анализ ПО.
Приоритеты тестирования.
Более тщательным образом должны быть протестированы те части и
![Анализ ПО. Приоритеты тестирования. Более тщательным образом должны быть протестированы те части](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/402863/slide-19.jpg)
документы ПО, с которыми пользователь будет иметь дело в первую очередь!
Дистрибутив
Первый запуск, начало работы, Tutorials, документация, краткий обзор, видео-презентация, примеры использования
Интерфейс, внешний дизайн
«Кого будет интересовать, что программный код безупречен, если какая-то часть интерфейса вызывает у пользователей затруднения, путает их, ведет к ошибкам, раздражает или является недостаточно гибкой и функциональной – не делает того, что, по мнению пользователей, она обязательно должна делать».
Основной функционал, система обработок ошибок, обновление
Функционал