- •По тестированию программного обеспечения
- •Способы обеспечения качества программного продукта
- •Организация тестирования
- •Спецификация программы
- •Разработка тестов
- •Управляющий граф программы
- •Основные проблемы тестирования
- •Критерии выбора тестов
- •Требования к идеальному критерию
- •Классы критериев
- •Структурные критерии
- •Функциональные критерии
- •Стохастические критерии
- •Мутационный критерий
- •Оценка покрытия программы и проекта
- •Методика интегральной оценки тестирования
- •Разновидности тестирования
- •Пользовательское тестирование
- •Качественные и количественные требования согласованности по скорости восприятия графической информации пользователем
- •Модульное тестирование
- •Особенности интеграционного тестирования для объектно-ориентированного программирования
- •Системное тестирование
- •Комбинирование уровней тестирования
- •Особенности индустриального тестирования
- •Автоматизация тестирования
- •Издержки тестирования
- •Качество программного продукта
- •Фазы процесса тестирования
- •Планирование тестирования
- •Типы тестирования
- •Подходы к разработке тестов
- •Документация и сопровождение тестов
- •Оценка качества тестов
- •Нагрузочное тестирование
- •Основные этапы нагрузочного тестирования
- •Основные виды нагрузочных тестов
- •Основные инструменты формирования нагрузки и сбора статистики при выполнении нагрузочного тестирования
- •Регрессионное тестирование
- •Цели и задачи регрессионного тестирования
- •Виды регрессионного тестирования
- •Управляемое регрессионное тестирование
- •Обоснование корректности метода отбора тестов
- •Классификация тестов при отборе
- •Возможности повторного использования тестов
- •Классификация выборочных методов
Пользовательское тестирование
Пользовательское тестирование — разработка и выполнение тестов методом «черного» ящика, в котором тестовые сценарии создаются для выполнения сценариев использования пользователями ПО (тестирование по сценариям использования).
Эргономика — наука о взаимодействии человека с элементами системы для обеспечения сохранности здоровья человека и оптимизации общей производительности системы.
Принципы:
Пригодность для выполнения задачи;
Информативность;
Соответствие ожиданиям пользователя;
Пригодность для обучения;
Устойчивость к ошибкам.
И др.
Качественные и количественные требования согласованности по скорости восприятия графической информации пользователем
Качественные требования:
Требование композиционного соответствия;
Требование лаконичности.
Требование обобщения.
Требование унификации.
Требование использования привычных ассоциаций.
Требование акцента.
Требование к последовательности кодирования.
Требование к кодированию состояния.
Красный цвет является аварийным и запрещающим;
Желтый цвет означает предупреждение;
Зеленый цвет — нормальное состояние;
Серый цвет — состояние не определено, нет данных.
Требование к компоновке графических символов.
Требование к эстетичности изображения.
Требование к временному разделению изображения.
Количественные требования:
Требования к длине алфавита (предельные значения длин алфавитов).
Требования к граничным порогам графических параметров символа:
Угловой размер элемента не должен быть меньше 15';
Количество одновременно воспринимаемых визуальных параметров равно 7±2 (закон Миллера).
Требования к дифференциальным порогам графических параметров символа.
Требование к контрасту — работа при прямом контрасте (предмет темнее фона) благоприятнее, чем при обратном контрасте (предмет светлее фона).
Модульное тестирование
Модульное тестирование — тестирование программы на уровне отдельно взятых модулей, функций или классов.
Цель модульного тестирования — в выявлении ошибок в модуле, а также в определении степени готовности системы к переходу на следующий уровень разработки и тестирования. Проводится по принципу «белого ящика», то есть основывается на знании внутренней структуры программы. Для каждого модуля обычно создаются заглушки для соответствующих интерфейсов.
Модульные тесты, связанные со структурным тестированием, формируются по следующим принципам:
На основе потока управления, когда элементы определяются на основе структурных критериев тестирования С0 (команд), С1 (ветвей), С2 (путей), к которым относятся вершины, дуги, пути управляющего графа программы и др.
На основе потока данных, когда элементы определяются при помощи потока данных, т. е. информационного графа программы.
Особенности интеграционного тестирования для объектно-ориентированного программирования
Объектно-ориентированное программное обеспечение является событийно управляемым.
Тестирование объектно-ориентированной программы должно включать те же уровни, что и тестирование процедурной программы — модульное, интеграционное и системное.
Графовая модель класса, как и объектно-ориентированной программы, на интеграционном уровне в качестве узлов использует методы.
ММ-путь msg a → метод 3 → msg 3 → метод 4 → msg d.
ММ-путь msg b → метод 1 → msg 1 → метод 4 → msg d.
ММ-путь msg b → метод 1 → msg 2 → метод 5.
ММ-путь msg c → метод 2.
P-путь call → метод 5.
Уровни тестирования классовой модели:
Модульное тестирование. Тестирование методов каждого класса программы.
Интеграционное тестирование. Тестирование методов класса, которые образуют контекст интеграционного тестирования каждого класса.
Интеграционное тестирование. Протестированный класс включается в общий контекст (дерево классов) программного проекта и отслеживается реакция программы на внешние события.
Возможность сочетать различные методы и критерии тестирования в ходе работы над программным проектом дает наилучшие результаты.
