|
|
|||||||||||||||||||||||||||||
|
Введение в тестирование приложений Lawson при помощи IBM Rational Performance TesterИсточник: ibm Чип Дейвис, сертифицированный специалист, IBM Фариз Сарачевич, старший IT-специалист, IBM
ПО компании Lawson Software включает приложения класса EPR (enterprise resource planning, управление ресурсами предприятия) и HR (human resources, кадровые ресурсы), которые используются во многих больницах и учреждениях здравоохранения. Эти приложения являются критически важными для бизнеса, поэтому тестирование производительности приобретает особую важность для успешного развертывания и модернизации систем Lawson. В этой статье даются рекомендации и информация (в том числе пошаговые инструкции) по использованию инструмента IBM Rational Performance Tester для тестирования приложений Lawson. Для выполнения действий, описанных в данной статье, необходимо, чтобы в системе был установлен программный продукт IBM®Rational® Performance Tester версии 7.0.0.2 или более поздней. Для тестирования приложений Lawson не требуется никаких дополнительных модулей расширения или подключаемых модулей. Автор статьи предполагает, что читатель обладает достаточными знаниями и навыками использования Rational Performance Tester, в том числе умеет записывать и редактировать тесты, добавлять точки верификации и ручные корреляции и имеет общее представление о работе с отчетами. Общее описание приложений Lawson Компания Lawson Software, партнер IBM, предлагает программное обеспечение для управления эффективностью деятельности в организации, управления цепочками поставок, управления ресурсами организации (EPR), планирования производственных ресурсов, управления информационными активами организации и приложения для производства. На Web-сайте компании Lawson о взаимоотношениях с корпорацией IBM говорится следующим образом: "Компания Lawson предоставляет соответствующие признанным стандартам решения с открытым исходным кодом, которые фундаментальным образом повышают производительность бизнеса у клиентов. Открытая архитектура решений Lawson обеспечивает клиентам превосходное качество, низкую общую стоимость приобретения и путь к внедрению сервис-ориентированной архитектуры (service-oriented architecture, SOA). Технологическая платформа решений Lawson -- Lawson System Foundation 9 -- объединяет в себе новейшие технологии Lawson и связующее ПО мирового класса от IBM для создания высокопроизводительных, соответствующих стандартам решений, которые обеспечивают весь комплекс преимуществ безопасности, масштабируемости, простоты и удобства в применении. Кроме того, мы не ограничиваем выбор аппаратной платформы клиентом и одновременно создаем базу для следующего поколения приложений Lawson, предназначенных для использования в SOA-средах." Lawson предлагает информационные решения для здравоохранения уже более десяти лет. Приложения компании можно встретить во многих больницах, учреждениях здравоохранения и вспомогательных учреждениях на всей территории США и во многих других странах. Общие принципы тестирования производительности приложений Lawson Платформа Lawson System Foundation выполняет несложное тестирование производительности HTTP с помощью стандартного Web-клиента. Хотя он не особенно отличается от других Web-приложений, все же следует отметить несколько характеристик, имеющих значение для использования Rational Performance Tester:
Примеры бланков (форм) Lawson для здравоохранения Ниже перечислены несколько распространенных форм Lawson, которые, возможно, вам придется тестировать:
Исходные соображения по разработке тестов Прежде чем приступить к записи тестовых процедур в Rational Performance Tester, эти тестовые процедуры нужно документировать. Обязательно укажите, какие значения в полях будут включены в пул данных (ввод из таблицы тестовых данных) и будут ли они произвольными или статичными (одинаковыми для всех выполняемых тестов). Учитывая объем работы, который часто необходим для улучшения скриптов для приложений Lawson, важно предварительно проверить и утвердить процедуры. Кроме того, важно тщательно продумать и отбирать тестовые данные, поскольку это может повлиять на разработку тестов. Например, если вы записываете транзакцию при помощи тестовой записи, не имеющей ни одного поля со значениями Большинство параметров Rational Performance Tester по умолчанию прекрасно подходят для работы с системами Lawson, за исключением параметра delay to generate a new page (задержка для генерации новой страницы), значение которого рекомендуется уменьшить. Измените это значение; для этого выберите из меню команды Window > Preferences > Test > Performance Test Generation, а затем перейдите на вкладку Protocol и задайте значение параметра Generate new page if delay between requests равным 1000 мс или меньше. Это гарантирует, что Rational Performance Tester будет генерировать тесты, в которых каждая страница содержит запрос к одному полю, что облегчит редактирование тестов. Затем транзакции можно использовать для своевременной генерации отчетов для целой формы или действий пользователя. Запись теста производительности в приложении Lawson Инициализация записи тестов для приложений Lawson не отличается от HTTP-записи.
Рисунок 1. Create New Test From Recording
Рисунок 2. Записанный сценарий тестирования производительности
После того как вы запишете процедуру тестирования приложения Lawson в тест, этот тест необходимо отредактировать. Некоторые сохраненные в процессе записи значения должны быть уникальными для теста, чтобы при их воспроизведении не возникало ошибок. Эти значения могут поступать с серверов Lawson или вычисляться (например, текущее время), и это необходимо скоррелировать в тесте. Остальные значения не обязательно должны быть разными, но, скорее всего, вы сами захотите изменить их, чтобы создать реалистичный тест. Такие дополнительные значения могут подаваться из таблиц тестовых данных, которые необходимо добавить в пул данных теста. В следующем разделе перечислены значения для Lawson, которые следует изменить, а также рассказывается о том, как изменить другие тестовые данные. После того как Rational Performance Tester закончит генерацию теста, одним из первых действий, которые вы сможете выполнить, будет переименование страниц. Web-приложение Lawson не генерирует понятных имен, которые Rational Performance Tester мог бы использовать для их обозначения. Например, некоторые страницы вместо реального наименования соответствующей формы могут получить имя servlet_ida. Рекомендуется переименовать такие страницы в соответствии с именами форм, к которым происходит обращение, или конкретных полей, значения в которых изменяются. Это важно потому, что помогает не только "читать" тесты в Rational Performance Tester, но и, что более важно, интерпретировать результаты теста и отчеты. Адаптация аутентификации в системе Lawson использует метод базовой аутентификации (Basic Authentication), которая может быть записана в Rational Performance Tester. Это довольно понятно и несложно в обработке, но большинство приложений используют базовую аутентификацию только один раз. В системах Lawson пользователи аутентифицируются и на странице входа, и при обращении к домашней странице. Следовательно, Rational Performance Tester создает две папки базовой аутентификации в каждом тесте (см. рисунок 3). Здесь в пул данных можно добавить значения User ID и Password:
Рисунок 3. Базовая аутентификация для HTTP-запроса
Первый запрос к домашней странице портала Lawson вместе с информацией для базовой аутентификации будет содержать также значение временной метки. Несмотря на то, что это может не быть обязательным, значение должно отражать текущее время при каждом воспроизведении теста, то есть оно должно быть уникальным. Рисунок 4. Временная метка в тесте
Чтобы предоставить уникальные значения для временной метки, можно воспользоваться встроенным средством - источником данных Rational Performance Tester:
Рисунок 5. Выбор временной метки Timestamp в тестовых данных
Можно использовать для данных профиля пользователя пул данных. Однако, поскольку приложения Lawson указывают эти данные в процессе обращения к материалам домашней страницы портала Lawson (см. рисунок 7), то лучше коррелировать информацию по данным отклика. Это гарантирует использование корректной информации и экономит память, которую в противном случае занял бы пул данных. Рисунок 7. Профиль WebUser в содержимом отклика
Пользователи Lawson вводят в систему много значений, в том числе имена и количества при заполнении форм. Первоначально тест будет содержать только значения, которые вы использовали при его записи. Rational Performance Tester при помощи цветового кодирования (зеленым цветом) покажет значения в тесте, для которых вы, возможно, захотите выполнить подстановку; они обозначаются как Datapool Candidates (претенденты на использование в пуле данных). Из процедуры тестирования вы должны узнать, какие значения необходимо изменить для каждого пользователя в процессе выполнения теста, и эти значения должны быть указаны в таблице тестовых данных. В Rational Performance Tester можно импортировать тестовые данные из таблицы в пуле данных через текстовый файл с разделителями-запятыми (.csv). Если ваши тестовые данные оформлены в пул данных, то вы можете выполнить для них подстановку значений из пула данных. Для каждого значения формы, которое нужно включить в пул данных, выполните следующие задачи:
Несмотря на то, что пользователь вводит определенные тестовые данные непосредственно в форму, остальные данные извлекаются из базы данных Lawson, а затем передаются туда и обратно в процессе выполнения тестовой процедуры. Например, вы вводите код компании 123, а Lawson извлекает название компании Acme, Inc., и после этого во всех запросах используются оба значения. Вы вводите только одно значение, а остальные сопутствующие значения могут быть невидимыми. Транзакции в приложениях Lawson будут выполняться только в том случае, если все связанные значения передаются совместно. Следовательно, если вы выполните подстановку не для всех значений, то транзакция будет некорректной. Необходимо определить, какие данные соответствуют значениям, которые вводятся непосредственно в форму. Вполне может быть, что вы не определите эти значения даже после того, как изучите ошибки, полученные при первичном воспроизведении теста. Иногда может отыскаться специалист, знакомый с формами и использовавшимися в них данными, который скажет вам, какие это значения. В противном случае вы можете просмотреть содержимое данных POST (обычно после таких действий, как Add, Change или Inquiry) и найти в них значения, соответствующие тем, которые вы ввели. Для каждого найденного значения, требующего корреляции вручную, выполните следующие шаги:
В некоторых случаях, например, для формы HR11, лучше определить изменяемые данные следующим способом:
Совет: Возможно, вам понадобится для сравнения также просмотреть другие запросы, например, предложение Get перед заключительным предложением POST.
Генерация данных в ходе выполнения теста (использование пользовательского кода) Некоторые данные, которые используются в тестах для Lawson, не предоставляются самой системой и, возможно, вам не нужно хранить их в пулах данных. Примеры - текущая дата или поля, требующие ввода произвольной информации. Такие значения в Rational Performance Tester можно сгенерировать в ходе выполнения теста при помощи пользовательского кода следующим образом:
Чтобы гарантировать точность выполнения тестов, можно использовать несколько доступных вариантов точек верификации (verification point, VP). Вы можете активировать их для всего теста или для отдельных страниц. Два примера:
Рисунок 8. Активация точек верификации Всегда включайте в тест хотя бы одну точку верификации контента (Content VP). Это можно сделать, выполнив следующие шаги:
Воспроизведение теста производительности в приложении Lawson Rational Performance Tester обеспечивает точное моделирование рабочей нагрузки благодаря использованию планов. Следовательно, после того, как вы отредактируете тест, вам нужно будет создать план.
Рисунок 9. План теста производительности
Выполнение плана тестирования производительности, в соответствии с которым применяется нагрузка к системе Lawson, можно проследить при помощи нескольких отчетов реального времени:
Рисунок 10. Итоговый отчет о производительности Overall performance report
Рисунок 11. Отчет о производительности Response vs. Time Summary
Рисунок 12. Отчет о производительности Page Throughput Ссылки по теме
|
|