Показать сообщение отдельно
Старый 20.04.2007, 16:51   #5  
avv is offline
avv
Участник
 
5 / 10 (1) +
Регистрация: 20.04.2007
Цели тестирования
Концепции тестирования
• Приемосдаточные испытания
• Исследовательское тестирование
• Основные характеристики тестирования
• Тестирование производительности
• Качество продукта
• Измерение качества
• Стадии тестирования
• Тестирование структуры
• Автоматизация тестирования и инструментарий
• Каталог тестовых понятий
• Список идей тестов
• Стратегия тестирования
• Тестирование жизненного цикла
• Типы тестов
• Тестирование удобства использования
Приемосдаточные испытания являются испытаниями, которые выполняются перед развертыванием системы. Целью приемосдаточных испытаний является оценка готового программного продукта на соответствие системным требованиям.
Существуют три стратегии приемосдаточных испытаний:
• формальные приемосдаточные испытания;
• альфа тестирование или неформальное приемосдаточное испытание;
• бета тестирование.
Формальные приемосдаточные испытания проводятся представителями организации разработчика и конечных пользователей, или только представителями организации конечных пользователей. При формальных приемосдаточных испытаниях известны тестируемые функции, тесты, критерии приемки. Процесс тестирования может быть автоматизирован и отслежен. Однако этот процесс требует планирование тестирования и привлечения значительных ресурсов. При этом способе тестирования будут обнаружены только те дефекты, которые ожидали найти.
Альфа тестирование или неформальное тестирование, как правило, производится представителями конечных пользователей. Тестируемые функции и критерии приемки известны. Контрольные примеры или наборы тестовых данных заранее не определены. Как работать с продуктом определяет конечный пользователь. При этом способе тестирования можно определить больше число ошибок, чем при формальных приемосдаточных испытаниях. Однако при этом отсутствует контроль за данными, которые используются при тестировании.
Бета тестирование производится конечными пользователями. При бета тестировании проверка программного продукта производится в условиях реального мира. При этом каждый конечный пользователь, вовлеченный в процесс тестирования, сам определяет, какие функции он будет тестировать, какие при этом будет использовать данные и критерий приемки. При этом способе тестирования можно определить гораздо большее число ошибок, чем при формальных и неформальных приемосдаточных испытаниях. Однако при бета тестировании могут быть протестированы не все функции продукта.
Тестирование производительности производится для оценки временных профилей, потоков заданий, времени отклика, операционной надежности и ограничений. Различные типы тестов на производительность разрабатываются на протяжении всего цикла разработки программного обеспечения.
На ранних стадиях разработки архитектуры программного обеспечения разрабатываются тесты для определения и устранения узких мест в архитектуре программного обеспечения с точки зрения производительности.
На стадии детального проектирования тесты на производительность разрабатываются и выполняются для проверки и настройки программного обеспечения, в стрессовых условиях работы, например, в таких как максимальное число транзакций, клиентов, или объема данных.
По RUP существуют следующие тесты на производительность:
• эталонное тестирование (benchmark testing);
• тестирование в конфликтных ситуациях (сontention test);
• профилирование производительности (performance profiling);
• нагрузочное тестирование (load testing);
• стрессовое тестирование (stress testing).

При эталонном тестировании для проверки производительности новой системы определенного класса используются специально подготовленные для этого класса систем тесты (бенчмарки). Тестирование в конфликтных ситуациях связано с проверкой работы системы, в условиях, когда одни и те же ресурсы (например, записи данных, память) требуются многим пользователям системы. При профилировании производительности производится проверка работоспособного состояния системы при изменении конфигураций.
При нагрузочном тестировании производится проверка работоспособного состояния системы при изменении количества пользователей системы, числа транзакций, и т.п.
При стрессовом тестировании производится проверка работоспособного состояния системы в экстремальных условиях, например в условиях резкого увеличения числа пользователей системы.
По RUP с точки зрения процесса тестирования оценку качества программного продукта следует производить для следующих типов требований:
• Функциональных (Functionality);
• Удобства использования (Usability);
• Надежности (Reliability);
• Производительности (Performance);
• Требований к сопровождению системы (Supportability).
• Проектных ограничений (Design Requirement);
• Требований к реализации (Implementation Requirement);
• Требований к интерфейсу (Interface Requirement);
• Требований к физическим характеристикам системы (Physical Requirement).
Для требований, указанных типов, следует разработать тесты, которые рекомендуется исполнять на различных стадиях тестирования.