InfoQ

News

Which SOA Testing Tool?

Posted by Mark Little on Mar 15, 2009

Community
SOA
Topics
SOA Platforms ,
SOA Appliance
Tags
Testing

SOA may or may not be dead. It may or may not be pining for the fjords. But no one can doubt that there is still a lot of unknowns surrounding what constitutes good SOA. Many vendors offer SOA Readiness tools, ostensibly to determine whether or not you are ready to adopt SOA, at what stage you are on the overall adoption curve, but are typically another way to drive vendor adoption. For instance, as the IBM assessment states:

Where does your company stand when it comes to adopting service oriented architecture (SOA)? Do you understand your current SOA level of maturity and opportunities for improvement? With targeted recommendations for improving your maturity level, the IBM SOA assessment tool can help you unlock the full value of SOA.

But once you've adopted SOA (to whatever degree) you obviously need some way of testing it. Fortunately many of the same people who brought you those handy readiness assessment tools also have a solution here. But what constitutes a good SOA testing tool(s) and do you have to be tied into specific SOA infrastructures? This is the question that Eric Roch asks. He provides some selection criteria that he uses:

  • Test-aware interfaces: standardized interface and messages for testing
  • Message-based test automation: record, replay and management of test scripts
  • Virtualization: the ability simulate virtual service providers and consumers
  • Simulation: the ability to simulate applications as part of a regression test
  • Load Test: the ability to stress test applications
  • Validation: pass/fail verification at the component (messaging) and application (data store) levels.
  • Components: Java and/or .NET component visibility
  • Introspection: WSDL and XML support to generate data and operation tests
  • Management: Manage test cases, scripts, data and results
  • Security: SSL, WS security federation, digital signatures
  • Industry Specific Data Formats: e.g. EDI, HL7
  • Continual Test: Automated build, deploy and test

A couple of years ago InfoWorld reviewed a few SOAP-based testing tools:

Fundamentally, testing a SOAP-based Web service involves three activities: constructing a SOAP request, submitting it, and evaluating the response. As easy as that sounds, it is anything but. An effective SOAP-testing tool cannot simply rely on a user-friendly mechanism for building requests. It must also enable the user to organize and arrange requests in realistic sequences, provide a means of altering request input values, and intelligently tweak requests so as to expose the Web service to a range of good and bad usage scenarios. In short, you want the tool to run the Web service through a reasonable approximation of real-world activity.

Although the industry has recognized that Web Services are just one way or approaching the technological aspects of SOA, it seems that most of the tools today still assume SOAP and WSDL.

Do you have a favourite SOA testing tool(s) or would modify Eric's criteria? Or do you know of any good tools that can be used across implementation technologies?

BPELUnit by Leif Singer Posted Mar 16, 2009 9:56 AM
soapUI by Rodrigo Silva Posted Apr 6, 2009 1:46 PM
Web service testing tools not SOA testing tools are available by Sashwat Gupta Posted Jun 20, 2009 1:51 PM
A great SOA testing tool by Amos Azaria Posted Nov 18, 2009 11:45 AM
My preferences - Parasoft SOATest by William El Kaim Posted Nov 19, 2009 5:59 PM
  1. Back to top

    BPELUnit

    Mar 16, 2009 9:56 AM by Leif Singer

    Daniel Lübke has written a short piece for our BPELUnit Eclipse plug-in, addressing the criteria from above where applicable.

  2. Back to top

    soapUI

    Apr 6, 2009 1:46 PM by Rodrigo Silva

    Here it is a good one: www.soapui.org/

  3. I have seen quite a few testing tools for SOA. All of them turned out to be web service testing tools.
    SOAP UI seemed to be most intuitive, but lacks quite some features.
    WS-Security still leaves a lot to be desired (improving over last few releases).
    Load testing is available
    Mocking of services is possible
    Extending the toolkit is possible (java/groovy script)
    Continual test - don't think possible
    Reporting is limited and leaves a lot to be desired
    Validation at message level is possible, but not at datastore level (can be done by custom groovy scripts)

  4. Back to top

    A great SOA testing tool

    Nov 18, 2009 11:45 AM by Amos Azaria

    There is this great SOA testing tool called "SOA Clenaer". It is very user friendly, and very usable. It can be used for testing SOAP REST and also WCF. it can be found at xyrow.com.

  5. Back to top

    My preferences - Parasoft SOATest

    Nov 19, 2009 5:59 PM by William El Kaim

    I do like a lot Parasoft SOAtest and especially the capability to create easily policies. It manages security in an easy way. It supports well JMS and REST, functional and load testing. Price can vary greatly based on your configuration.

    - Test-aware interfaces: standardized interface and messages for testing
    yes
    - Message-based test automation: record, replay and management of test scripts
    yes supports multiple JMS
    - Virtualization: the ability simulate virtual service providers and consumers
    yes never used
    - Simulation: the ability to simulate applications as part of a regression test
    not sure
    - Load Test: the ability to stress test applications
    yes
    - Validation: pass/fail verification at the component (messaging) and application (data store) levels.
    no
    - Components: Java and/or .NET component visibility
    no
    - Introspection: WSDL and XML support to generate data and operation tests
    yes
    - Management: Manage test cases, scripts, data and results
    Yes, file based
    - Security: SSL, WS security federation, digital signatures
    yes
    - Industry Specific Data Formats: e.g. EDI, HL7
    no
    - Continual Test: Automated build, deploy and test
    no, but can be done through scripting engine




    You can also try Actional diagnostic 8 which is limited but can provide good support.

    Finally, ITKO is offering with Lisa

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.