2009-07-16 3 views

ответ

0

Думаете, вы должны помнить, что в среде, где есть много зависимостей, вы должны иметь все сопоставленные зависимости и все пути должны быть протестированы.

Имея услуги, они должны использоваться с большим количеством клиентов, поэтому каждый клиент должен следить за тестовыми случаями.

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

Кроме того, предоставление услуг не требует иного подхода. Просто контролируйте все входы и выходы.

2

Как каждый «сервис-провайдер» должен иметь стандартный, бизнес-ориентированный интерфейс (обычно снабженное WSDL технологии), то следующие свойства могут быть разными :

  • Предоставляемые услуги не должны изменяться с пересмотра на ревизию модулей, если только вы не вносите существенные изменения в сам бизнес.

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

  • В идеале, потребляемые услуги предоставляются по каталогу, а не жестко закодированы в модули; если это имеет место, то тестирование частей системы - некоторые модули, но не все - становится намного проще.

Edit:

  • И, как уже отмечалось, необходимо проверить соответствие спецификации, а не если нынешние компоненты системы работают друг с другом. Например, веб-страница может отображаться ОК в Internet Explorer, но все же не соответствует спецификации и, следовательно, непригодна для использования в других браузерах. Когда вы идете в SOA, вы ожидаете, что сможете без проблем заменить поставщиков услуг.
+0

Он спросил о «тестировании SOA», а не о самой SOA. –

+0

Как вы тестируете SOA, в значительной степени зависит от того, как вы ее проектируете. – skaffman

+0

Ее она :) Да, я хочу знать о тестировании SOA. Почему кто-нибудь будет тестировать SOA? – 2009-07-16 14:02:48

0

мало (?) Ценные советы:

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

Проверьте надежность своих потребителей: что происходит, когда сообщения теряются, когда поставщик услуг недоступен.

0

SOA-тестирование может быть определено как расширение традиционного тестирования.

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

Поскольку процесс охватывает различные виды услуг, некоторые из которых могут быть обертки, некоторые службы также могут иметь ограничения на ограничение связи, соглашения об уровне обслуживания, все это усложняет процесс тестирования, и это следует учитывать, что придумывает тест стратегия.

1

Типичные тесты обслуживания SOA: черный ящик, где вы используете только рассмотрение опубликованного контракта WSDL, однако иногда необходимо сделать прямую проверку в базах данных, особенно если нет возможности (операции), которая может быть использована сделать валидацию.

Также, как современные платформы SOA обычно совместно используют ресурсы с другой эксплуатационной реализацией, важно имитировать нагрузку обработки, большую или равную объему производства, и оценивать влияние памяти, обработки и потребления ввода-вывода, избегая негативное влияние на уже развернутые услуги.

Наиболее сложная проблема связана с сжиматься и эволюция реализации, о том, как реализовать новые функциональные возможности, не нарушая существующие клиент, это может быть особенно обременительной, потому что есть синтаксические и семантические проблемы, например:

  • несовместимый синтаксис:новая версия контракта может иметь новый элемент, но не может иметь новые требуемые элементов, так как это нарушит старые клиент, такого рода проблема, как правило, избегал, запустив автоматизированные тесты реализован с как текущими, так и новыми контрактами.
  • проверки абстракция: часто, каноническая модель (XML-схема), которые совместно с несколькими службами, с тем чтобы избежать преобразований типов и обеспечить общий язык бизнеса, они обычно не имеют все проверки, необходимые для всех операций обслуживания , Затем необходимая логика проверки выполняется непосредственно в реализации услуги. Если новая версия службы реализует новый набор валидаций, не входящих в опубликованный контракт, клиенты должны быть уведомлены, а сценарии должны быть протестированы.

Инструменты, которые я обычно используют являются: SOAP UI и JMeter, а также создавать пользовательские автоматизированные тесты с использованием в доме разработаны рамки.

0

Испытание Soa просто гарантирует, что все независимые службы ведут себя ожидаемым образом, все время придерживаясь контракта на ввод и вывод, установленного этими службами. Я нашел интересный инструмент для тестирования SOA, и он БЕСПЛАТНО SOArite.