На примере сценария для приложения вымышленного банка JKE в статье демонстрируется разработка ключевых слов и потоков работ для банковского приложения. Ключевые слова в Rational Quality Manager позволяют разделить сценарии тестирования на модули. Коллекция ключевых слов становится предметно-ориентированной инфраструктурой, которую можно использовать для объединения потоков высокоуровневых сценариев. Ключевые слова, определенные в начале проекта, образуют предметно-ориентированную инфраструктуру, позволяющую сосредоточиться на написании потоков сценария тестирования, не беспокоясь о дублировании этапов тестирования.
Введение
Управление тестированием является непростой задачей из-за растущей сложности корпоративных приложений. Трудно определить покрытие по перечню сценариев тестирования и тестов, потому что связь между сценариями тестирования и тестами не является очевидной. Ключевые слова в IBM® Rational® Quality Manager 4.0.1 позволяют разделить сценарии тестирования на модули. Коллекция разделенных на модули сценариев тестирования становится предметно-ориентированной инфраструктурой, которую можно использовать для объединения потоков высокоуровневых сценариев. Откладывая на будущее детальную реализацию (посредством ручного или автоматизированного сценария), архитекторы тестов или продуктов могут сосредоточиться на создании потоков высокоуровневых сценариев с помощью ключевых слов. Ключевые слова, определенные в начале проекта, образуют предметно-ориентированную инфраструктуру, позволяющую сосредоточиться на написании потоков сценария тестирования, не беспокоясь о дублировании этапов тестирования.
Быстрый анализ использования конкретных ключевых слов предоставляет рекомендации по наиболее часто используемым ключевым словам. С помощью инструментов, подобных IBM® Rational® Functional Tester или Selenium, можно быстро сделать первый шаг к автоматизации, выполнив автоматическую обработку этих ключевых слов. Планировщик или архитектор тестов могут использовать этот подход, чтобы структурировать работу группы тестирования.
На примере сценария для приложения вымышленного банка JKE в статье демонстрируется разработка ключевых слов и потоков работ для банковского приложения. Выполняются следующие шаги:
Определение операций.
Разработка ключевых слов для операций.
Разработка сценариев с этими ключевыми словами.
О приложении Rational Quality Manager
Приложение Rational Quality Manager служит центром коллективной работы по планированию тестов и управлению результатами тестов. Приложение входит в состав созданной на Jazz™ платформы Rational solution for Collaborative Application Lifecycle Management (CALM). С помощью Rational Quality Manager можно поддерживать автоматизированные и ручные тесты, отслеживать соответствие тестов требованиями, а также управлять изменениями, такими как дефекты и планы разработки. На рисунке 1 показана интеграция Rational Quality Manager с Rational Team Concert™ и инструментами управления требованиями, такими как IBM® Rational® DOORS® и IBM® Rational® Requirements Composer. Продукт Rational Quality Manager поддерживает OSLC. Он также хорошо интегрируется с продуктами других поставщиков.
Рисунок 1. Продукты Collaborative Lifecycle Management
Группирование сценариев тестирования с помощью ключевых слов
Ключевые слова являются высокоуровневыми абстракциями, которые аналогично подпрограммам задают последовательность этапов тестирования в Rational Quality Manager. Последовательность этапов тестирования может быть как автоматизированной, так и ручной. Ключевые слова помогают разделить тесты на модули и создать пользовательский поток или бизнес-сценарий, отложив фактическую реализацию на более поздние этапы. Не имеющие технической подготовки специалисты в предметной области могут с их помощью легко читать и писать читабельные тесты, напоминающие бизнес-сценарии. Такие тесты можно затем преобразовать в сценарии автоматизации без потери соответствия бизнес-потоку.
Чтобы перевести проект на автоматизированный набор тестов, можно заменить ключевое слово с набором ручных этапов на сценарий автоматизации.
Использование подхода "сверху вниз"
Обычно создание сценариев тестирования выполняется "снизу вверх": тестировщики пишут сценарии и затем группируют их в логический набор тестов. Такой подход затрудняет определение покрытия по деталям сценария. Обычно определить, какой сценарий тестируется, можно только по его имени. Понять покрытие теста, читая сценарий тестирования, состоящий из десятков и сотен этапов, может быть практически невозможно, если опираться только на имена сценариев. Как правило, сценарии являются длинными (см. рисунок 2).
Рисунок 2. Этапы сценария
Чтобы реализовать подход "сверху вниз", разбейте тестируемое приложение (AUT) на элементарные операции и определите действия для них. Сценарий тестирования можно затем скомпоновать из этих элементарных операций. Такой сценарий тестирования показан на рисунке 3.
Рисунок 3. Сценарий, состоящий из ключевых слов
Такой подход делает сценарий тестирования читабельным и больше похожим на естественный язык (английский, немецкий, японский и т.д.).
Подход сверху вниз дает двойное преимущество:
- Повторное использование элементарных операций.
- Управляемость и читабельность сценариев.
В следующих разделах описывается создание и повторное использование ключевых слов для быстрой разработки новых сценариев.
Создание перечня ключевых слов
Прежде всего определите элементарные операции. Эти операции войдут в перечень ключевых слов, которые будут использоваться при разработке сценариев тестирования. В Rational Quality Manager 4.0.3 (или выше) выберите Construction>Create>Keywords и создайте ключевое слово. Чтобы создать ключевое слово в более ранних версиях Rational Quality Manager, выберите Construction>Browse>Keywords, а затем нажмите на пиктограмму +.
Мы пока не задаем конкретные этапы, соответствующие ключевому слову. Это можно сделать позднее. Еще до создания тестируемого приложения специалист в предметной области или архитектор могут создать перечень ключевых слов, не добавляя этапы в каждое ключевое слово. Разработчики и тестировщики смогут добавить этапы позднее по мере разработки приложения.
На рисунке 4 показан пример перечня ключевых слов. Ключевые слова представляют бизнес-операции тестируемого приложения.
Рисунок 4. Представление Keyword View в Script Editor
Создание ручного высокоуровневого сценария
Перечень ключевых слов можно использовать для создания высокоуровневых сценариев тестирования. Из ключевых слов можно собрать ручной сценарий . Этот ручной сценарий является высокоуровневым родительским сценарием, имитирующим вариант использования. Такой сценарий должен быть прост для чтения и проверки потока варианта использования специалистом в предметной области или архитектором.
Чтобы создать ручной сценарий, выберите Construction>Create>Test Script. Добавьте в сценарий ключевые слова в последовательности, отражающей последовательность действий варианта использования (см. рисунок 5).
Рисунок 5. Добавление ключевого слова в сценарий
Высокоуровневый ручной сценарий тестирования можно детализировать для тестирования одной конкретной функции. Для проверки или утверждения потока операций используйте встроенный механизм утверждения. Если сценарий нужно отправить по электронной почте стороннему консультанту или эксперту, можно экспортировать его в формат PDF, а затем отправить сгенерированный PDF-файл.
Заполнение заглушек сценария
Теперь для ключевых слов можно ввести подробную информацию одним из следующих способов:
- Вручную создать последовательность этапов.
- Связать сценарии автоматизации с ключевыми словами.
Создание последовательности ручных этапов
Создайте сценарий тестирования типа Manual Script и введите ручные этапы (см. рисунок 6).
Рисунок 6. Создание сценария для ключевого слова
После заполнения всех ключевых слов родительский сценарий готов к работе. Напомним, что вы можете использовать эти ключевые слова для быстрой сборки больших родительских сценариев путем перетаскивания.
Выполнение родительского сценария с ручными этапами
Теперь готовый родительский сценарий можно добавить в тест и выполнить его. При запуске теста с родительским сценарием все этапы, добавленные в последовательность, отображаются как один сценарий тестирования (см. рисунок 7).
Рисунок 7. Выполнение родительского сценария с ключевыми словами
Вы получаете те же преимущества, что и при разработке сценария снизу вверх. Сам сценарий выглядит одинаково независимо от подхода, но при разработке сверху вниз перечень сценариев разбивается на модули. С помощью ключевых слов можно легко объединить несколько сценариев, не создавая этапы сценария с нуля.
Связывание сценариев автоматизации с ключевыми словами
Вместо ручных этапов можно создать перечень сценариев автоматизации с помощью инструментов автоматизации, таких как Rational Functional Tester или Selenium. Не обязательно создавать все сценарии одновременно. Можно постепенно добавлять сценарии автоматизации и применять их, не ожидая записи всего сценария. В нашем примере при записи сценария автоматизации для ключевого слова используется Rational Functional Tester. В Rational Functional Tester подключитесь к серверу Rational Quality Manager и к проекту, чтобы просмотреть список всех ключевых слов (см. рисунок 8).
Рисунок 8. Представление Keyword View в Rational Functional Tester или в Rational Test Workbench
В Rational Functional Tester сценарий можно записать из представления Keyword View. Во время записи можно также просмотреть ручные этапы. После создания сценарий можно связать с ключевым словом.
Примечание. Для передачи данных в сценарий тестирования и из него используются переменные выполнения.
Выполнение родительского сценария с автоматизированным сценарием
В процессе постепенной автоматизации сценария можно продолжать использование родительского сценария, являющегося комбинацией ручных и автоматизированных сценариев.
Примечание. При использовании Rational Quality Manager 4.0.3 и старше необходимо перейти к ключевому слову и сделать только что записанный сценарий автоматизации сценарием по умолчанию.
При повторном выполнении теста автоматизированные ключевые слова вызывают сценарии автоматизации. Ключевые слова, содержащие ручные этапы, остаются ручными (см. рисунок 9).
Рисунок 9. Выполнение с одним автоматизированным ключевым словом
Заключение
Применение ключевых слов помогает повысить управляемость тестирования. Ключевые слова позволяют упорядочивать перечень сценариев, создавать удобочитаемые высокоуровневые сценарии и со временем переходить в планировании теста от ручных этапов к сценариям автоматизации. Ключевые слова упрощают обеспечение адекватного покрытия кода, поскольку позволяют анализировать перечень сценариев тестирования и тестов с точки зрения высокоуровневого потока операций между сценариями тестирования и вариантами использования.