Читайте также: |
|
Тестирование представляет собой деятельность по проверке программного кода и документации. Она должна заранее планироваться и систематически проводиться специально назначенным независимым тестировщиком. Работа тестировщика начинается до утверждения спецификаций требований. Он проверяет требования к программному продукту на полноту и возможность тестирования, определяет методы тестирования.
Одновременно с началом этапа планирования и создания спецификаций требований тестировщик разрабатывает стратегию тестирования. После утверждения спецификаций требований разрабатывается и детализируется план тестирования. Тогда же тестировщик создает наборы тестов для проведения интеграционного и системного тестирований. Тестирование завершается зданием отчета о тестировании, в котором представляются результаты его проведения.
Для каждого программного изделия должен существовать набор тестов, проверяющий его корректность. Существует несколько уровней тестирования, позволяющих полностью проверить программное изделие. Каждый уровень имеет свои цели и компоненты.
Можно выделить пять уровней тестирования:
− модульное;
− интеграционное;
− системное;
− выходное;
− приемочное.
Циклом тестирования называется совокупность действий, выполняемых тестировщиком с момента передачи базовой версии программного продукта тестировщику для интеграционного, системного или приемочного тестирования до момента успешного завершения тестирования. На каждом проходе цикла тестирования создаются:
− базовая версия программного продукта, подлежащего тестированию;
− отчет о ходе тестирования;
− метрики тестирования (заносятся в базу данных проекта).
Существуют две основные стратегии тестирования:
1. Тестирование программы как черного ящика, при котором программа рассматривается как объект, внутренняя структура которого неизвестна.
2. Тестирование программы как прозрачного (белого) ящика подразумевает знание исходного кода программы и полный доступ к нему.
Существуют также разновидности тестирования:
Ручное тестирование - проводится без исполнения тестирующей программы на компьютере.
Статическое тестирование - наиболее формализованное, базируется на правилах структурного построения программ и обработки данных (формальный анализ текста программы на языке программирования без изменения объектного кода).
Символическое тестирование - анализ операторов и операндов текста программы в символьном виде.
Детерминированное тестирование требует многократного выполнения программы на ЭВМ с использованием определенных, специальным образом подобранных тестовых наборов данных; контролируется каждая комбинация исходных данных и соответствующие результаты, а также каждое утверждение в спецификации тестируемой программы.
Стохастическое тестирование предполагает использование в качестве исходных данных множества случайных величин с соответствующими распределениями, а для сравнения полученных результатов используются также распределения случайных величин.
Подходы к тестированию:
Тестирование сверху вниз. Применяется, если программа разрабатывается сверху вниз. В данном случае используются «заглушки»-фрагменты кода, имитирующие еще не написанные части программы.
Тестирование снизу вверх. При этом как правило, дополнительно должна быть создана небольшая программа-«драйвер», организующая взаимодействие уже написанных модулей.
Виды тестирования:
- модульное тестирование. Этот вид тестирования представляет собой процесс проверки отдельных программных процедур и подпрограмм, входящих в состав программ или программных систем. После успешного завершения модульного тестирования все измененные модули и наборы тестов сохраняются в базе данных Проекта.
- интеграционное тестирование. Этот вид тестирования проводится для проверки совместной работы отдельных модулей и предшествует тестированию всей системы как единого целого. В ходе Интеграционного тестирования проверяются связи между модулями, их совместимость и функциональность. Оно осуществляйся независимым тестировщиком и входит в состав этапа тестирования.
Ошибки, выявленные в ходе интеграционного тестирования заносятся в базу данных ошибок. Результаты интеграционного тестирования включаются в отчет о ходе тестирования при завершении цикла тестирования.
- системное тестирование. Этот вид тестирования предназначен для проверки программной системы в целом, ее организации и функционирования на соответствие спецификациям требований заказчика. Его проводит независимый тестировщик после успешного завершения интеграционного тестирования.
Ошибки, выявленные при системном тестировании, заносятся в базу данных проекта. Результаты системного тестирования включаются в отчет о ходе тестирования.
- выходное тестирование. Это завершающий этап тестирования на котором проверяется готовность ПП к поставке заказчику. Данный вид тестирования проводит независимый тестировщик.
- приемочное тестирование. Этот вид тестирования пpoводится организацией, отвечающей за инсталляцию, сопровождение программной системы и обучение конечного пользователя.
Программное средство «касса» тестировалось с помощью ручного тестирования. В ходе тестирования были обнаружены и устранены все ошибки.
Таблица 4. Примеры тестовых случаев.
№ теста | Описание теста | Ожидаемые результаты | Тест пройден |
Ввод с клавиатуры искомого товара и нажатие клавиши Enter | В таблице останется только искомый товар | Да | |
Ввод с клавиатуры искомого кода товара и нажатие клавиши Enter | В таблице останется только искомый товар | Да | |
Выбор товара из списка и нажатие кнопки Add by code | В таблицу со списком товаров добавится выбранный товар | Да | |
Нажатие клавиши Add all | В таблицу со списком товаров добавятся все товары | Да | |
Выбор из списка товаров любое наименование и нажатие клавиши Clear | Из списка покупок удалится выбранный элемент | Да | |
Нажатие клавиши Clear аll | Из списка покупок удалятся все элементы | Да |
Дата добавления: 2015-07-11; просмотров: 223 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
АРХИТЕКТУРА ПРОГРАММНОГО МОДУЛЯ | | | РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ |