Создание теста службы на основе модели BPEL

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

Прежде чем начать

Тесты сохраняются в проектах тестов. Если рабочее пространство не содержит проект теста, то мастер создания теста создаст проект и предложит изменить его название. Заготовку теста можно сохранить только в уже существующем проекте.

В случае применения идентификации SSL в рабочей области должны быть доступны необходимые файлы ключей.

В случае применения службы сообщений Java™ (JMS), убедитесь, что в среде настроены правильные библиотеки и файлы конфигурации. Синтаксис файлов WSDL должен соответствовать требованиям среды тестирования.

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

Модели BPEL должны быть синхронными. Асинхронные модели BPEL не поддерживаются.

Модели BPEL должны ссылаться на файлы WSDL в соответствующем элементе import, например:
<bpws:import importType="http://www.w3.org/2001/XMLSchema" location="foo.wsdl" namespace="http://foo"/> 
Относительные пути к файлам, такие как "../../foo.wsdl", не поддерживаются.
Убедитесь, что в рабочем пространстве есть допустимые файлы WSDL и связанная с ними модель BPEL. Для правильной работы вызовы служб используют связывание веб-службы. Например, если модель BPEL создана в IBM® Websphere Integration Developer, то службы необходимо экспортировать со следующим связыванием веб-службы:
<bpws:invoke name="myOperation" operation="myOperation" partnerLink="IServicePartner" portType="ns3:IService" wpc:displayName="myOperation" wpc:id="20">

Для создания тестов применяются только операции invoke BPEL. Операции receive и reply BPEL игнорируются.

Websphere Integration Developer не генерирует обязательные атрибуты soapAction для операций SOAP в файлах WSDL. Для каждой такой операции в файл необходимо добавить этот атрибут: <soap:operation soapAction=""/>.

Процедура

Для создания теста на основе модели BPEL выполните следующие действия:

  1. В проекции Тестирование производительности выберите Файл > Создать > Прочие > Тест > Ресурсы теста > Тест BPEL веб-службы и нажмите кнопку Далее.
  2. Нажмите кнопку Обзор и выберите файл BPEL в рабочем пространстве, затем нажмите кнопку Далее.
  3. На странице Создание теста веб-службы укажите число путей, настроив способ обработки операций из потока модели BPEL. Каждый путь генерирует один тест.
    1. В разделе Поток укажите, как параллельные последовательности в потоке будут преобразованы в пути.
    2. В разделе Ветвление укажите, следует ли тестировать операции otherwise в потоке.
    3. В разделе Исключение укажите, как операции throw будут преобразованы в пути.
    4. В разделе Вызвать укажите, следует ли тестировать встроенные catch в операциях invoke в потоке.
    5. Опция Включить зависимости данных в созданных тестах позволяет автоматически создать ссылки в элементах созданного теста, передавая переменные в параметры вызова веб-службы и элементы возвращаемых сообщений.
  4. Выберите Пересчитать пути, чтобы обновить число путей в тесте, и нажмите кнопку Далее. Для каждого пути создается один тест.
  5. Для операций WSDL, связанных с несколькими портами, необходимо выбрать один порт, используемый для теста.

    В каждом сгенерированном тесте в списке Операции показаны операции WSDL, связанные с несколькими портами.

    Если для тестов никакие операции WSDL не показаны, то все операции связаны с единственным портом. В этом случае пропустите шаг 6.

    1. В списке Операции откройте тест и выберите операции WSDL, для которой требуется настроить связывание.
    2. В списке Порты связывания выберите порт для теста выбранной операции WSDL.
    3. Повторите шаги a и b для каждой операции WSDL, требующей связывания.
  6. Нажмите Далее.
  7. Выберите расположение и имя для папки, где будут созданы тесты, сгенерированные из модели BPEL, и нажмите кнопку Готово.

Результаты

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

Комментарии