|
|
|||||||||||||||||||||||||||||
|
Использование Rational Performance Tester для выполнения крупномасштабных SAP-тестовИсточник: IBM
ВведениеУзнайте, как оптимизировать расширение IBM® Rational® Performance Tester SAP® Protocol Extension для выполнения высокопроизводительного и масштабируемого тестирования SAP-решений с помощью Rational Performance Tester. В этой статье освещаются следующие вопросы:
Задание параметров конфигурации для серверов SAP R/3Конфигурация по умолчанию серверов SAP R/3 не поддерживает высокие пользовательские и транзакционные нагрузки. Форумы по SAP переполнены обращениями администраторов SAP, испытывающих трудности в достижении оптимальной конфигурации, рекомендуемой для производственных систем. Зачастую тестировщики производительности находят узкие места в сервере приложений при выполнении тестов под нагрузкой в предпроизводственной среде. Эти узкие места приводят к ошибкам при создании новых подключений с сервера приложений SAP R/3 во время выполнения тестов под нагрузкой. Типичные результаты таких ошибок:
Эти результаты могут неправильно интерпретироваться как проблемы на стороне клиента или проблемы инструмента тестирования производительности. В данном разделе рассматриваются некоторые конфигурации сервера SAP R/3, позволяющие обойти узкие места. Максимальное число одновременных диалогов (CPIC_MAX_CONV)Клиенты SAP с графическим пользовательским интерфейсов (GUI) подключаются к серверу приложений SAP R/3 с помощью вызова Remote Function Call (RFC) через сокеты TCP/IP, используя для коммуникации стандартный интерфейс Common Programming Interface for Communications (CPIC) консорциума X/Open. Обычно первым узким местом, даже при неполной нагрузке на сервер приложений, становится слой CPIC. Когда тест производительности достигает этого узкого места, в консоли SAP Execution Event Console в Rational Performance Tester начинают накапливаться ошибки подключения SAP вместе с исключениями По умолчанию значение Параметр Параметры шлюза и профиля SAPДля взаимодействия с внешними клиентами или другими серверами приложений сервер приложений SAP имеет экземпляр установленного сервер-шлюза. Запросы Remote Procedure Call (RPC) по TCP/IP из клиентских приложений на сервер приложений SAP направляются через шлюз SAP. Шлюз SAP может располагаться на одной машине с сервером приложений или представлять собой отдельную машину, используемую для балансировки нагрузки серверов SAP R/3. Параметры управления памятью и ресурсами имеют большое значение для крупномасштабной обработки. В приведенной ниже таблице перечислены настройки общих параметров управления ресурсами и памятью шлюза для высокой пользовательской нагрузки. Таблица 1. Параметры шлюза SAP
Оптимальные значения параметров зависят от целого ряда факторов, включая пользовательскую нагрузку, число и характер транзакций. В Rational Performance Tester сценарий тестирования средней сложности, выполняющий нагрузку в 1000 виртуальных пользователей, завершил тесты со следующими значениями:
Описанные выше параметры профиля и шлюза SAP изменяются в интерфейсе SAP GUI с помощью транзакции RZ10. После подключения к серверу SAP R/3 вызовите транзакцию RZ10. В окне транзакции выберите профиль, где должны быть изменены значения переменных, и нажмите кнопку Change (см. рисунок 1). Рисунок 1. Изменение параметров SAP R/3 в окне транзакции RZ10
Примечание. В следующем окне транзакции (см. рисунок 2) отображается список параметров, которые уже созданы в этом профиле. Если изменяемый параметр есть в списке, дважды щелкните на нем левой кнопкой мыши, чтобы вывести окно изменения параметра. Если параметр отсутствует в списке, воспользуйтесь кнопкой Parameter для его создания. В окне изменения параметра (см. рисунок 3) введите нужное значение параметра, а затем нажмите кнопку Copy, чтобы применить изменения к профилю. После внесения изменений перезапускать экземпляр SAP не нужно. Рисунок 2. Список параметров и создание нового параметра
Рисунок 3. Изменение параметра SAP
Настройка Rational Performance Tester для выполнения SAP-тестов под нагрузкойИспользуйте рекомендации этого раздела, чтобы настроить Rational Performance Tester для выполнения SAP-тестов под нагрузкой. Развертывание крупномасштабных SAP-тестов в Rational Performance TesterРекомендации по развертыванию крупномасштабных тестов в Rational Performance Tester:
Настройка плана SAP-теста производительностиВ данном разделе приводятся инструкции по настройке параметров SAP-теста производительности. Выбор статистических данных, собираемых в тесте производительности В Rational Performance Tester можно настроить план тестирования (см. рисунок 4), выбрав тип данных, получаемых от агентов, частоту получения данных (частоту выборки), а также объем данных (от всех пользователей или от репрезентативной выборки). Для плана с высокой пользовательской нагрузкой необходимо определить, какие параметры оптимальны для тестируемых требований к производительности. Рисунок 4. Планирование сбора статистики
Для высокой пользовательской нагрузи в Statistics log level выберите Primary test actions. Этот параметр ограничивает накладные расходы обработки в агентах и рабочей среде при сборе статистики. Для SAP-теста параметр Primary Test Actions включает в себя все действия плана и SAP-окна. При выполнении плана отображаются отчеты с периодически обновляемой информацией. Частота обновления информации зависит от параметра Statistics sample interval (см. рисунок 4). По умолчанию Statistics sample interval в Rational Performance Tester составляет 5 секунд. Рекомендуется использовать значение в интервале от 30 до 120 секунд. Отметьте флажок Only store All Hosts statistics, чтобы уменьшить объем сохраняемых статистических данных. Этот параметр позволяет тестировать большие нагрузки в течение более длительного периода времени, используя значительно меньше оперативной памяти. Недостатком применения этого параметра является невозможность получения статистических данных для каждого агента. Однако эти данные обычно не представляют интереса при выполнении большого теста производительности. Определение уровня журнала тестирования и информации выборки Журнал тестирования содержит элементы, соответствующие событиям, происходящим во время выполнения теста. Эти данные помогают тестировщику в отладке на начальных этапах разработки тестов и исключают появление предупреждений при выполнении тестов с высокой пользовательской нагрузкой. Большая виртуальная пользовательская нагрузка обычно выполняется после устранения всех проблем в индивидуальных тестах и тестах с минимальной пользовательской нагрузкой. Рекомендуется установить уровень сбора данных Primary Test Actions (см. рисунок 5). В этот уровень в дополнение к событиям, касающимся действий плана тестирования, включаются:
Рисунок 5. Настройка уровня журнала тестирования и информации выборки
Чтобы задать частоту выборки, отметьте флажок Only sample information from a subset of users, а затем выберите один из вариантов. Число (или процент), которое вы укажете, будет применено к каждой группе пользователей. Если вы используете удаленные группы пользователей, указанное число (или процент) равномерно распределится между удаленными группами. Для нагрузок с большим числом пользователей установите малое значение. Скрытие пользовательского графического интерфейса для всех виртуальных пользователей Убедитесь, что во всех SAP-тестах под нагрузкой интерфейс SAP GUI скрыт для всех виртуальных пользователей и для всех тестов плана (см. рисунок 6). Рисунок 6. Скрытие пользовательского интерфейса SAP в ходе всех тестовВключение режима длительного выполнения Когда время выполнения тестов превышает 24 часа, проблемы использования ресурсов могут вызвать проблемы SAP-клиентов. Режим длительного выполнения повышает надежность продолжительных тестов для протокола SAP за счет их выполнения в нескольких процессах. Включите режим длительного выполнения для плана SAP в редакторе Performance Schedule Editor (см. рисунок 7). Рисунок 7. Включение режима длительного выполнения
Для SAP-тестов в режиме длительного выполнения каждый раз, когда число экземпляров теста достигает указанного значения, запускается новый процесс SAP-клиента. Например, для теста под нагрузкой, который использует параметр, показанный на рисунке 7, новый процесс запускается после выполнения 100 тестов. Использование передовых методик в SAP-тестах под нагрузкойПеред запуском теста под нагрузкой убедитесь, что тест воспроизводится без ошибок в холостом режиме. Улучшение показателя успешности продолжительных тестовДля улучшения выполнения продолжительных тестов используйте следующие рекомендации:
Настройка параметров SAP-клиента для выполнения тестов под нагрузкойРекомендации по настройке параметров SAP-клиента:
Рисунок 8. Тема SAP Signature Theme и настройка анимации
Настройка записи и воспроизведения пакетного ввода SAPПри выполнении крупномасштабных тестов добавьте к виртуальным пользователям, управляемым SAP-клиентом, виртуальных пользователей, создаваемым SAP-тестами с пакетным вводом. Тесты с пакетным вводом обращаются к серверу SAP R/3 на низком уровне, используя библиотеку SAP JCO. С помощью этой библиотеки Rational Performance Tester обходит интерфейс SAP GUI и получает возможность использовать для нагрузок гораздо меньше памяти и ресурсов процессора. В один и тот же план можно добавлять как обычные, так и пакетные SAP-тесты. Основной целью тестов с пакетным вводом в таких планах является добавление дополнительной нагрузки на сервер SAP R/3 к уже имеющейся нагрузке от обычных тестов. SAP-тесты с пакетным вводом не содержат точек верификации и элементов интерфейса SAP GUI. Таким образом, данные о производительности будут основаны на результатах обычных SAP-тестов. Пакетный тест можно записать в SAP GUI, если для захвата взаимодействия SAP GUI с сервером SAP R/3 выбрать встроенную программу записи. Это показано на рисунке 9. Программа записи может сохранять собранные данные в текстовом файле. Рисунок 9. Встроенная программа записи в SAP GUI для тестов с пакетным вводом
После записи сценария в файл пакетного ввода в SAP GUI в Rational Performance Tester нужно создать новый тест путем импорта файла пакетного ввода. Один тест с пакетным вводом может содержать несколько транзакций (см. рисунок 10). Рисунок 10. Создание нового SAP-теста из текстового файла записи пакетного ввода
В Rational Performance Tester можно настроить свойства подключения JCO на уровне теста для управления параллельными подключениями посредством библиотеки JCO (см. рисунок 11). Библиотека подключений JCO предоставляет возможность повторно использовать подключения из пула. Организация пулов в тесте под нагрузкой помогает ограничить накладные расходы на создание подключений. Она также помогает ограничить число открытых подключений на стороне клиента и сервера SAP R/3. Рисунок 11. Свойства подключения SAP JCO в Rational Performance Tester
Типичные ошибки в SAP-тестах под нагрузкойВ этом разделе описываются некоторые распространенные проблемы SAP-тестов под нагрузкой и способы их преодоления. Попытка получить все и сразуПолностью устраните неполадки записи тестов для одного виртуального пользователя, чтобы гарантировать точность потока работ и подстановки данных. После этого воспроизведите записанные тесты с минимальным числом (менее 5) виртуальных пользователей, чтобы убедиться в правильности динамической подстановки пользовательских данных и в успешном выполнении потока работ для всех пользователей. После выполнения теста с минимальной нагрузкой постепенно увеличивайте нагрузку до требуемого уровня. Возможность получить дополнительные измерения по мере роста нагрузки помогает определить узкие места и выяснить их локализацию: конфигурация Rational Performance Tester или сервер SAP R/3. Ошибка Invalid Control ID при воспроизведении SAP-тестовПри воспроизведении SAP-тестов часто можно наблюдать ошибку Invalid Control ID (недопустимый идентификатор элемента управления). Эту ошибку генерирует SAP GUI, когда вызываемый метод относится к отсутствующему элементу графического интерфейса пользователя. Такое происходит, если элемент управления еще не отобразился в SAP GUI. Данную проблему можно преодолеть путем увеличения времени отображения SAP-экрана или вставки соответствующих задержек в тесты для правильного отображения экранов. Установите надлежащий коэффициент нарастания нагрузки, чтобы все пользователи не могли одновременно войти в систему и начать выполнение транзакций на серверах SAP R/3. Эта ошибка также может возникать при выборе пользователем записи ввода в модальном диалоговом окне путем нажатия на любой столбец, кроме первого. На рисунке 12 показано, как правильно выбрать запись. На рисунке 13 показан неправильный способ. Рисунок 12. Выбор записи с помощью первого столбца (правильно)
Рисунок 13. Выбор записи путем нажатия на другие столбцы (неправильно
Загрузка ненужных модальных диалоговых окон в тесте производительностиВ SAP GUI в качестве поля ввода для выбора значения из предопределенного набора используется элемент интерфейса GuiComboBox (F4). Чтобы открыть модальное диалоговое окно с предопределенными значениями, нажмите кнопку Help вместе с GuiComboBox. Выберите значение ввода из предопределенных значений. Избегайте использования параметра, показанного на рисунке 15. Вместо этого введите необходимое значение непосредственно в текстовое поле, как показано на рисунке 14. Такой подход помогает избежать появления ресурсоемких, но ненужных всплывающих окон графического пользовательского интерфейса. Рисунок 14. Прямой ввод требуемого значения (рекомендуется)
Рисунок 15. Выбор значения из модального диалогового окна (не рекомендуется)
ЗаключениеВ статье объясняется, как оптимизировать серверы SAP R/3 и Rational Performance Tester для выполнения тестов с высокой пользовательской нагрузкой. Кроме того, статья описывает некоторые передовые методики и типичные ошибки при использовании Rational Performance Tester для тестирования производительности серверов SAP R/3.
|
|