Автоматизированное тестирование SAP: опыт «Апланы»

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

Наши инженеры считают, что инструменты тестирования SAP должны быть доступными, удобными, стабильными, простым в освоении для тестировщиков, а главное — легко встраиваемыми в любой процесс. Выбор инструментов обязательно должен учитывать пожелания заказчика и особенности его IT-ландшафта.

ERP-системы, вроде SAP, могут объединять подразделения компании, обеспечивая автоматизацию планирования, учета и анализа всех бизнес-процессов. Они обрабатывают большие массивы данных, поэтому часто подвергаются перегрузкам, а с выходом обновлений в них могут появляться ошибки, сбиваться настройки и т.д. С целью выявления проблем в работоспособности SAP и его модулей проводится тестирование.

Автоматизированное тестирование SAP: опыт «Апланы»

Автоматизированное тестирование SAP

В прошлой статье мы уже писали, что в основном для функционального тестирования SAP используются ручные тесты, однако, в сложных ситуациях, на крупных и долгосрочных проектах выгоднее использовать автоматизированные тесты. Если тестовая модель постоянно растет, наступает момент, когда ее ручное прохождение начинает обходиться заказчику дорого и занимает много времени. С помощью автоматизации тестирования можно без потери качества протестировать тот же объем, но быстрее и за меньшую стоимость. Ее успех обеспечивается правильным выбором инструмента тестирования и инфраструктуры автоматизации.

Процесс автоматизации тестирования состоит из следующих этапов:

  1. Анализ бизнес-процессов компании-заказчика, выявление основных из них
  2. Исследовательская работа (сбор и анализ документации, общение с ключевыми пользователями, аналитиками и консультантами)
  3. Определение стратегии тестирования
  4. Составление матрицы покрытия, формирование тест-плана, написание ручных тестовых сценариев
  5. Разработка автоматизированных тестов

Для автоматизированного тестирования SAP используют такие решения, как SAP CBTA, SAP ECATT, Unified Functional Testing (UFT), IBM Rational Functional Tester, SmartBear TestComplete и другие. Все перечисленные инструменты сотрудники «IBS AppLine» успешно используют в своих проектах, а если их возможностей становится недостаточно, разрабатывают собственные расширения.

В этом материале мы расскажем о средствах автоматизации SAP-систем, которые наши инженеры по тестированию используют чаще всего.

SAP CBTA (Component-based Test Automation)

Наиболее популярным инструментом для автоматизации тестирования SAP-приложений является SAP CBTA. SAP CBTA – это компонентно-основанный или компонентно-ориентированный инструмент автоматизации тестирования, интегрированный в SAP Solution Manager, и предназначенный для автоматизации E2E тестирования.

Создание автоматизированных тестов происходит с помощью мастера записи действий бизнес-пользователя (Record & Playback). Благодаря этому, инженеру-тестировщику не требуется знания языков программирования.

Автоматизированное тестирование SAP: опыт «Апланы»

Особенности и возможности CBTA:

  • Лаконичный мастер создания/записи тестов с контролем каждого записываемого шага;
  • Библиотека готовых компонентов, поставляемых SAP, с помощью которых разрабатываются автоматизированные тесты,
  • Относительно легкое сопровождение и изменение разработанных автоматизированных тестов;
  • Возможность управления тестовыми данными и создание тестовых конфигураций для последующего E2E тестирования бизнес-процессов;
  • Возможность повторного использования разработанных функций;
  • Возможность подключения всех созданных тестов к BPCA и запуска тестов согласно внесенным в систему изменениям.

Технические ограничения CBTA:

  • Для web-интерфейсов возможности CBTA ограничены: запись работает не всегда, записываются не все действий, распознаются не все веб-элементы;
  • Для работы с элементами SAPGUITREE необходимо разрабатывать дополнительные функции.

В автоматизации SAP большинство элементарных операций покрывается поставляемыми компонентами, но бывают ситуации, когда этого мало. Расширить функциональность CBTA можно путем написания собственных библиотек на языке программирования VBScript.

Автоматизированные тесты, написанные на CBTA, могут быть легко интегрированы в методологию CI/CD (Continuous Integration и Continuous Delivery). Запуск автоматизированных тестов производится с помощью встроенного в SAP Solution Manager планировщика, а составление тестового покрытия – с помощью встроенных инструментов SAP BPCA (Business Process Change Analyzer) и SAP TBOM (Technical Bill of Material). SAP BPCA и SAP TBOM анализируют влияние переносимых изменений на бизнес-процессы. Изменения сравниваются со списком объектов еще неизмененной системы (функциональные модули, таблицы, элементы пользовательского интерфейса и т.д.), на основании полученной информации автоматически составляется список автоматизированных тестов для выполнения.

Автоматизированное тестирование SAP: опыт «Апланы»

Unified Functional Testing (UFT)

UFT — один из ведущих инструментов автоматизации функционального тестирования, флагманский продукт компании MicroFocus в своей линейке. Использует VBScript (в новых версиях поддерживаются и другие), есть репозиторий объектов и средство хранения данных, возможна интеграция с ALM (хранятся все артефакты тестирования, сами тесты, библиотеки, заведенные дефекты и пр.), поддерживаются многие технологии — не только SAP, но и другие. Основным минусом UFT является стоимость лицензий и отсутствие интеграции с SAP Solution Manager.

Автоматизация SAP с помощью Java

Для автоматизации тестирования SAP можно использовать язык программирования Java и Java-библиотеку Jacob. Среди плюсов — возможность разработать более гибкий фреймворк для автоматизации и применить популярный подход BDD (behavior-driven development). Инструмент Selenium отлично подойдет для тестирования интеграций и веб-порталов SAP. Минусами подхода являются повышенные требования к квалификации команды тестировщиков, увеличенное время разработки автоматизированных тестов по сравнению с инструментами Record & Playback и отсутствие интеграции с SAP Solution Manager.

Сравнительная таблица инструментов

Критерий Инструменты
CBTA UFT Java + Jacob
Сложность настройки Очень высокая Низкая Высокая
Поддерживаемые технологии тестируемого приложения SAP, WEB SAP, Java, .Net, WEB, REST и другие SAP, при подключении библиотеки Selenium - WEB
Поддерживаемые языки программирования VBScript VBScript (в новых версиях и другие) Java
Наличие инструмента Record & Playback Да, встроенный Да, встроенный Отдельное бесплатное приложение SAP Scripting Tracker
Трудоемкость разработки автоматизированных тестов Компонентный подход и возможность записи практически исключает необходимость программирования и сокращает трудозатраты на доработку Встроенный инструмент записи не всегда корректно записывает действия. Для большого количества тестов необходима разработка удобного фреймворка Объектно – ориентированный язык позволяет создавать удобные фреймворки, повышающие переиспользование готовых модулей.

Если не планируется разработка большого количества тестов, то можно воспользоваться инструментами записи действий SAP Scripting Tracker
Интеграция с Solman Да, встроенная Нет Нет
Порог вхождения Низкий Средний Высокий
Лицензия Входит в поставку SAP Платная Open source

Благодарим за помощь в подготовке материала заместителя руководителя направления тестирования — Николая Стрельцова, а также старших инженеров-тестировщиков «IBS AppLine» — Владислава Чижова и Никиту Потапова.

Советуем прочесть

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