The Coming SOA Revolution: What It Means To Testers
Applications deployed with service oriented architectures are implemented as producers and consumers of services. Testing a Service Oriented Architecture (SOA) application is unlike anything you've done before because every service can be invoked by consumers of whom you have no knowledge. This requires you to understand the specifications of those services in order to build valid, robust tests. Before SOAs began appearing in IT organizations, testers often dealt with lack of management commitment, poor testing tools, and minimal testing environments. Now, with SOA, the risks of failure are high, and the powerful processes, protocols, and tools that software developers use to build applications can also be used by testers to verify, validate, and test SOA applications. In SOA testing, instead of using antiquated tools, we use a variety of dynamic scripting languages (Rhino, Python, and Ruby) and procedure-less test scenario documents including WADL, LMX, and WSIT. Service oriented architectures make test designs more complex-you must express the full meaning and goals of the services in the tests-but make executing tests much easier with standard SOA development tools for test automation.