Testing Is Key To Success

Web services -- those loosely coupled, machine-to-machine transactions -- have to work error-free, without human intervention, to achieve their much-heralded efficiency benefits. It takes only one software error to turn a Web services application into a disaster.

"The automation of Web services is definitely a two-edged sword," says Joshua Greenbaum, an analyst at Enterprise Applications Consulting in Daly City, Calif. "There is the potential for a cascade effect. Imagine a faulty transaction linked to a complex supply chain, and consider the speed in which errors can propagate."

Therefore testing, which is always important, is even more critical for Web services.

There's already a new breed of Web services testing tools available from vendors such as Mercury Interactive Corp., Parasoft Corp., Empirix Inc. and Cape Clear Software Inc. Most are able to read Web Services Description Language (WSDL) files, which is usually the first step on the road to testing.

Venturing Outside

Testing Web services inside the firewall -- for application integration projects, for example -- isn't much different from testing traditional applications. But Web services that reach outside the firewall raise new testing issues.

Insurance company MetLife Inc., for example, uses Web services to connect dental providers and employers. But "with loosely coupled applications, you don't even know where all the pieces reside," says James August, vice president and chief architect for the institutional portfolio at MetLife in New York.

August worked with BearingPoint Inc. consultants to design testing processes for the new Web services applications. He says it would be nice to have more testing tools, but the market is still immature. "What we are after," he says, "is good regression testing that we can apply bottom-up and top-down." Regression testing selectively retests software that has been modified to ensure that bugs have been fixed and that no new problems have been inadvertently added. Bottom-up testing checks individual components, whereas top-down testing checks the entire set of applications.

Measured Progress Inc., an educational testing firm in Dover, N.H., uses software from Waltham, Mass.-based Empirix to help test a highly distributed Web services application. Web services link the company's .Net platform to various school testing systems across several states. Edmund Ashley, manager of software development at the company, says Web services ease the integration headaches but also introduce new levels of testing complexity.

The fact that Web services are good at linking a hodgepodge of systems also means that they deliver a more unpredictable stream of data across the company's network. "We need to be aware of the blend of data coming in," says Ashley. "Empirix helps us test mixes of SOAP and HTTP [data], for example. Understanding how this affects the system is critical, especially as our loads increase."

Loads that can increase unpredictably will be one of the biggest testing challenges for Web services that link servers to external clients, says Adam Kolawa, CEO and founder of Parasoft in Monrovia, Calif. And, Kolawa continues, "it will be more important than ever to test for the unexpected."

"We call it 'monkey testing,' " he explains. "You want to throw weird requests at the server and see how it behaves."

MIB to the Rescue?

So far, there isn't much use of the UDDI Web directory standard, except in pilot projects, says Alejandro Danylyszyn, senior manager of technology integration at Deloitte Consulting in New York. But even in the pilot phase, UDDI deployments will probably require more than a window into WSDL for testing.

Benjamin Sherman, a senior consultant at Greenwich Technology Partners Inc. in Harris, N.Y., says tools that allow developers to see how components in a Web service are performing aren't widely available. Sherman says he's alarmed that "IT shops have no way to test Web services applications with complex dependencies, so they are forced to just throw them over the wall and see how they do."

But, he adds, improvements are on the way. The Internet Engineering Task Force has proposed an application performance management Management Information Base, or APM MIB. (MIBs have been around for a long time in network operations. They're standardized databases that allow remote management and testing of IT devices.) Sherman says a Web services MIB would provide standard metrics on any Web services component.

Not everyone agrees that a new MIB is the way to go. Ido Sarig, vice president of technology strategy at Mercury Interactive in Sunnyvale, Calif., says he thinks the same testing and management functions can be added to future versions of WSDL.

In any case, users are pressing ahead with existing tools, even though the tools are still evolving and there isn't yet agreement on standards for Web services testing. Experts say that despite the uncertainty in this young market, IT managers should have an aggressive plan for testing Web services applications if they expect them to be successful.

Leon is a freelance writer in San Francisco. Contact him at mrleon@usfca.edu.

Special Report

The Web Services Tsumani

Stories in this report:

Copyright © 2003 IDG Communications, Inc.

7 inconvenient truths about the hybrid work trend
Shop Tech Products at Amazon