Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Обзор сред автоматизации тестирования.




Рассмотрим некоторые понятия, которые используются в современных средах автоматизации тестирования.

Требование - это формализованное описание свойств системы.

Виды требований:

Бизнес-требования

Функциональные требования

Нефункциональные требования

Тестовые требования

Тестовое требование - это формализованное описание свойств системы, которые необходимо протестировать.

Критерии к тестовым требованиям:

• Корректность;

• Недвусмысленность;

• Полнота;

• Непротиворечивость;

• Упорядоченность по важности и стабильности;

• Проверяемость (верифицируемость или тестопригодность);

• Модифицируемость;

• Трассируемость;

• Понятность.

Тестовый сценарий - это последовательность ДЕЙСТВИЙ для достижения фактического результата.

Состав тестового сценария

• Название

• Предварительные условия

• Необходимые действия

• Ожидаемый результат

• Полученные результаты

• Отметка о прохождении

• Сценарий должен быть прост и понятен всем: неопытному тестировщику, программисту, бизнес-пользователю.

Тестовый набор - набор тестов, которые принадлежат к одной функциональности.

Дефект - отклонение от фактического результата от ожидаемого результата.

Минимальные данные о дефекте:

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

• дата

• автор (обнаруживший дефект)

• ссылка на систему и ее версию (build)

• приоритет (Priority)

• серьезность проблемы (Severity)

• описание (предусловия, шаги для воспроизведения, ожидаемый результат, действительный результат)

• состояние, статус

Классификация по типу: Ошибки в функциональности

• ошибки эргономики модуля или бизнес-процесса

• ошибки документирования

• ошибки производительности

• ошибки локализации

• ошибки совместимости

• ошибки безопасности

Степени критичности:

• Максимальная критичность

• Высокая критичность

• Нормальная критичность

• Низкая критичность


Жизненный цикл дефектов.

 

Система трекинга багов — это инфраструктура, позволяющая:

• создавать,

• хранить,

• просматривать и

• модифицировать информацию

Каждый баг, занесенный в СТБ, представляет собой виртуальную учетную карточку.

Обычно

Рассмотрим несколько известных баг-трекинговых систем:

• BUGS

• Bugzilla

• JIRA

• Trac

• Track Studio

• Продукты HP

BUGS - the Bug Genie

www.thebuggenie.com

Это свободная система отслеживания ошибок. Для управления предоставляется веб-интерфейс. Система кроссплатформенная, написана на PHP.

BUGS предоставляет базовый набор инструментов для регистрации ошибок, расстановки приоритетов, формировании задач для разработчиков.

Система позволяет:

• оповещать всех, кто может быть связан с ошибкой.

• отслеживать ошибки в зависимости от версии и конфигурации ПО.

• сохранять ошибки в единую БД, представляющую собой базу знаний об ошибках в проекте. Далее по этой БД можно формировать подробные отчеты.

• устанавливать blocker bugs - ошибки, которые могут блокировать выпуск релиза.

В последних версиях разработчики BUGS улучшили формат отчетов. Что особенно приятно: BUGS обладает user-friendly интерфейсом. Для работы с этой BTS вам не потребуется копаться в горах мануалов.

Недостаток BUGS - отсутствие распределенной многопользовательской работы. Невозможно работать удаленно с несколькими серверами или несколькими БД. В силу этого можно рекомендовать, BUGS для небольших команд разработчиков.

Bugzilla

www.bugzilla.org

Bugzilla - это одна из наиболее популярных систем багтрэкинга. Bugzilla является свободным ПО и распространяется по Mozilla Public License.

Bugzilla пользуются более 800 (!) компаний по всему миру.

Система позволяет:

• отслеживать ошибки и изменения кода

общаться с членами команды

• размещать и описывать патчи

• производить контроль качества продуктов

Система предоставляет отличную базу знаний для ошибок, по которой можно весьма легко формировать отчеты. Bugzilla имеет стандартный веб- интерфейс.

Bugzilla можно интегрировать с другими программами, для управления проектами:

• CVS

• Perforce SCM

• Subversion

• Tinderbox/Tinderbox2

К недостаткам Bugzilla можно отнести сложность установки, зависимость от модулей Perl, сложность администрирования и несколько неприглядный интерфейс

JIRA

www. atlassian. com/software/j ira/

JIRA обладает на сегодняшний день наиболее широкой функциональностью среди систем отслеживания ошибок. В целом JIRA повторяет архитектуру Bugzilla.

Процесс баг трэкинга следующий:

• Создаваясь, сообщение обязательно имеет Assignie - ответственного, адресата

• Каждому Issue можно поставить приоритет важности, адресовать на себя, добавить комментарий.

• Сообщения можно установить статус IN PROGRESS - в начале работы над ним, и соответственно указав, когда работы над ним закончены.

Аккаунты пользователей управляются как администратором, так и самим пользователем. Пользователи могут быть объединены в группы. При чём как отдельному пользователю так и группе можно запретить/разрешить одно вполне конкретное действие.

JIRA идеально подходит для крупных проектов, с большим штатом тестировщиков. Используя JIRA можно работать под различными ОС, создавать и вести «схемы безопасности» для каждого из проектов.

Эта BTS обладает одним существенным недостатком: она платная.

Trac

trac.edgewall.org

Trac - это открытое ПО, являющиеся одновременно инструментом для управления проектом и системой отслеживания ошибок.

Интерфейс Trac фактически представляет wiki. Система использует в работе SVN репозиторий, так что использовать его имеет смысл только вместе с svn.

Возможности системы:

• разделение проекта на этапы (milestones)

• контроль выполнения (roadmap)

• все изменения по проекту заносятся на временную шкалу (timeline)

• поддержка RSS

Отчеты об ошибках можно заносить в тикеты. Среди прочего Trac позволяет: учет ошибок, замечаний, пожеланий с возможностью фильтрации и занесение соответственно в milestone, roadmap.

Trac является кроссплатформенной системой. Эту систему можно рекомендовать широкому кругу разработчиков, которые хотят внедрить комплексную систему управления проектами, включающую отслеживание ошибок.

Track Studio является отечественным продуктом и разработан российской компанией «ГРАН»

В отличие от JIRA, оптимизированной для работы с внешними клиентами, Track Studio позволяет эффективно организовать работу внутри компании (например, обработку обращений клиентов). Track Studio позволяет эффективно управлять тысячами проектов: проекты можно организовывать в иерархию, можно делать поиск проектов по параметрам, к проектам можно прикладывать файлы, для проектов можно создавать пользовательские поля (дата релиза, клиент, номер договора) и многое другое. Одно из преимуществ состоит в том, что Track Studio хорошо поддерживает БД Oracle.

В Track Studio сложно осуществлять интеграцию с другими средами разработки. Кроме того у программы достаточно сложный интерфейс.

Цены на Track Studio начинаются от $500, что является существенным преимуществом по сравнению с JIRA.

HP LoadRunner, HP QuickTest Professional, HP Quality Center

На рынке ПО для тестировщиков также существует и решение от НР(Компания HP совершила крупнейшую сделку по приобретению Mercury Interactive Corp., в результате которой их детище - HP Software - интегрирует возможности Mercury в сфере управления и тестирования приложений с обширным портфелем решений HP для управления ИТ). В состав ПО входит

• HP Quality Center

• HP QuickTest Professional

• HP LoadRunner

HP Quality Center представляет собой законченную интегрированную систему для обеспечения управления процессами контроля качества на всех этапах разработки ПО.

В HP Quality Center включены средства организации и проведения тестирования (ручного).

HP Quality Center содержит пять модулей, тесно интегрированных между собой и обеспечивающих непрерывность процесса тестирования:

1. Management — в данном модуле

регистрируются релизы программного обеспечения, подлежащие тестированию. Сущность «Release» может иметь дочернюю сущность «Cycle», означающую цикл тестирования.

2. Requirements management — в данном модуле описываются требования. Как правило, каждому требованию

соответствует одна сущность «Requirement». Допускается многократная вложенность требований, а также различные типы требований (в том числе, создаваемые пользователями).

3. Test Plan — в данном модуле создаются планы тестирования. Есть возможность генерации иерархии тестов напрямую из иерархии требований. Тесты могут быть описаны вплоть до шагов, в которых определяется ожидаемое состояние системы.

4. Test Lab — в данном модуле отдельные тесты объединяются в последовательности, задаются условия запуска тестов в зависимости от успешности запуска предыдущих, создаётся расписание запуска тестов, осуществляется запуск тестов вручную.

5. Defects management — данный модуль представляет собой систему отслеживания ошибок, интегрированную со всеми другими модулями. То есть, возможно зарегистрировать ошибку как в требовании (модуль Requirements), так и в тесте или шаге теста (Test Plan), так и в конкретном запуске теста (Test Lab).

HP QuickTest Professional (QTP) — один из ведущих инструментов автоматизации функционального тестирования, является флагманским продуктом компании HP в своей линейке. Для разработки автоматизированных тестов QTP использует язык VBScript, и поддерживает следующие технологии: Windows® Presentation Foundation, Web services, Macromedia Flex, Ajax, Delphi,.NET, J2EEWeb, Visual Basic, ActiveX, Java, Oracle, SAP Solution, TE, PowerBuilder, Siebel, PeopleSoft, VisualAge, Stingray.

Компания HP рекомендует использование QTP в интеграции с HP Quality Center для установления связи тестов с требованиями, хранения тестов, управления их запуском, формирования отчётов.

В отличие от ряда других продуктов для автоматизации функционального тестирования (например, IBM Rational Robot), QTP позволяет контролировать генерируемый текст скрипта в процессе записи действий пользователя, за счёт чего снижается время, необходимое для разработки теста.

В QTP информация обо всех объектах экранного интерфейса сохраняется в специальный репозиторий (Object Repository), что новому пользователю может показаться непрозрачным. Умолчания по выбору существенных свойств каждого типа объектов экранного интерфейса могут быть настроены отдельно, например, окно может определяться заголовком, а столбец таблицы — шириной и порядковым номером в таблице.

Существует встроенный механизм сравнения текстовых данных с использованием регулярных выражений.

Так же существует возможность записи теста, и последуюшим воспроизведением, редактированием как уже было сказано на языке VBScript.

HP LoadRunner — утилита для автоматизированного нагрузочного тестирования. Программа может выполнять как тестирование различных приложений, так и тестирование сайтов различного уровня сложности. Подключая виртуальных пользователей выполняющих различные скрипты (действия), по различным сценариям. Программа имеет соответствующие наборы инструментов для проведения тестирования. Так же в состав HP LoadRunner входит набор инструментов для работы по различным протоколам с приложением (удаленно, через прокси-сервер и т.п.)

HP LoadRunner состоит из следующих приложений:

■ Virtual User Generator (VuGen) — служит для разработки нагрузочных скриптов.

■ Load Generator — служит для генерации нагрузки (генерации виртуальных пользователей).

■ Controller — служит для разработки и запуска сценариев нагрузки.

■ Analysis — служит для анализа результатов нагрузочного тестирования.

Основной недостаток у такого решения - цена.

Выводы

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

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

Так же решения, такие как HP Software предполагают взаимодействие разработчиков и различных тестировщиков обычных, ручных(не автоматических, которые обычно тестируют функционал(регрессионное тестирование, тестирование нового функционала)), автоматизаторов тестирования(разрабатывают автоматизированные скрипты), нагрузочных, тестировщиков и, наконец, самих разработчиков.

Выводы

В этой работе были рассмотрены основные виды тестирования, классификация видов тестирования, история тестирования, некоторые инструменты для тестирования

 


Литература:

1) wikipedia.ru

2) Р. Савин - тестированиеdot-com М. «Дело» 2007. 312

3) М. Маран - Лекции МЭИ.





Поделиться с друзьями:


Дата добавления: 2016-11-12; Мы поможем в написании ваших работ!; просмотров: 817 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Что разум человека может постигнуть и во что он может поверить, того он способен достичь © Наполеон Хилл
==> читать все изречения...

2510 - | 2325 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.012 с.