Средства автоматизированного тестирования

Реферат, 22 Января 2012, автор: пользователь скрыл имя

Краткое описание


Тестирование — один из важнейших этапов контроля качества в процессе разработки программного обеспечения.

Содержание


Тестирование
Автоматизация тестирования
Выбор инструмента
Средства от IBM Rational
Наследие Mercury
Примеры

Вложенные файлы: 1 файл

С.р. - Тестирование.docx

— 75.11 Кб (Скачать файл)

Помимо собственно средств тестирования существуют так называемые средства поддержки процесса тестирования, позволяющие вести учет требования и тест-кейсов, проводить анализы покрытия требования тестами, управлять ходом выполнения тестирования, вести учет обнаруженных дефектов и т.п. Лидирует в данной области Web-приложение HP Quality Center – единый инструмент управления процессом тестирования (включая управление требованиями и дефект-менеджмент), интегрируемый со средствами функционального и нагрузочного тестирования HP QuickTest Professional и LoadRunner. С данным инструментом конкурирует продукт Rational Quality Manager (RQM) от IBM, представляющий собой Web-приложение на платформе Jazz.

Исторически сложилось так, что Россия отстает от остального компьютерного мира по применению средств автоматизации тестирования, и для этого, на мой взгляд, есть несколько причин. Во-первых, неправильное отношение к тестированию как таковому – многие руководители до сих пор считают, что разработчик может написать программу, которая не содержит ошибок. Во-вторых, высокая стоимость инструментов автоматизации тестирования. В-третьих, желание сэкономить на квалифицированных кадрах – работа специалиста по средствам автоматизации тестирования обходится дороже, чем труд обычного тестировщика, поэтому многие компании предпочитают пригласить трех студентов, которые будут вручную тестировать программное обеспечение (в большинстве случае к тому же бессистемно), чем нанять одного специалиста-автоматизатора. В-четвертых, ограничение по срокам – автоматизация тестирования требует значительных временных затрат и имеет смысл только в том случае, если проект как минимум среднесрочный (от полугода и более). И наконец, в-пятых, неудачный опыт применения таких средств и ожидание мгновенного эффекта от их внедрения. А ведь результаты внедрения таких продуктов заметны далеко не сразу и затраты на автоматизацию окупаются за длительный период времени, что не позволяет полностью отказаться от тестирования вручную.

Принято разделять тестирование по уровням задач и объектов на разных стадиях и этапах разработки ПО (см. таблицу):

  • тестирование частей ПО (модулей, компонентов) с целью проверки правильности реализации алгоритмов -- выполняется разработчиками;
  • функциональное тестирование подсистем и ПО в целом с целью проверки степени выполнения функциональных требований к ПО -- рекомендуется проводить отдельной группой тестировщиков, не подчиненной руководителю разработки;
  • нагрузочное тестирование (в том числе стрессовое) для выявления характеристик функционирования ПО при изменении нагрузки (интенсивности обращений к нему, наполнения базы данных и т. п.) -- для выполнения этой работы требуются высококвалифицированные тестировщики и дорогостоящие средства автоматизации экспериментов.

Этапы тестирования

Вид тестирования Стадия, этап Объект Критерий
Структурное, надежности Разработка Компоненты Покрытие ветвлений, функции
Сборочное Разработка Подсистемы Функциональность, степень проверки компонентов
Функциональное Разработка Система в целом Соответствие функциональным требованиям ТЗ
Регрессионное Разработка, сопровождение Система в целом Проверка качества внесения изменений
Нагрузочное Разработка, сопровождение Система в целом Оценка статистических характеристик системы, соответствие ТЗ, ТТХ, подбор конфигурации оборудования
 Стрессовое Разработка, сопровождение Система в целом Корректность работы системы при предельных нагрузках

Когда понятно, что и зачем нужно тестировать, и есть план действий, самое время задуматься о том, как это сделать эффективнее, быстрее и более качественно. Современное ПО -- это сложный объект, и вручную с ним справляться трудно и дорого. К тому же при "ручном" тестировании результаты каждого выполнения тестов пропадают, и их трудно повторить. Для того чтобы увеличить объем проверок и повысить качество тестирования, обеспечить возможность повторного использования тестов при внесении изменений в ПО применяют средства автоматизации тестирования. К их числу относятся средства автоматизации функционального и нагрузочного тестирования клиент-серверных и Web-приложений: Rational TestStudio, Mercury LoadRunner, Segue SilkPerformer, а также менее популярные продукты фирм Compuware, CA, Empirix, RadView Software и др.  

Информация о работе Средства автоматизированного тестирования