Before the recent move to service-oriented architectures, application testing mostly called for ensuring that a software application performed as it was designed, could handle specific loads and could be integrated with other isolated applications.
Throwing web services into the mix is creating complexities that are prompting users to adjust traditional testing procedures.
Common monolithic applications were not written to be broken down into components, and they can be more easily tested than service-oriented applications, which can be dynamically tied together with components from other applications.
In addition, while an SOA can create flexibility by tying together multiple services to form new business processes, it also can create new points of failure at the various connection points — all of which need to be tested.
Patrick Plant, director of information services for the Anoka-Hennepin School District in Minnesota, says that the move to an SOA requires a shift in all parts of the development process — especially testing.
"In many cases now, you have more parts interacting with other parts," says Plant of SOA applications. Therefore, "you're also having to test the application interacting with other applications and other interfaces."
To help guide its SOA testing efforts, the school district has created matrixes noting all the possible combinations of browsers and operating systems that could be used to access its applications, Plant says.
The school district is working with Hewlett-Packard to help it build an SOA. The system will eventually link its 40-plus systems to provide centralised access to bus routes, student schedules and assignments, attendance records and lunch accounts.
Donald Marcotte, principal test engineer at Cardinal Health, a Dublin, Ohio-based distributor of pharmaceuticals and medical supplies, has been using the Lisa SOA testing tool from Dallas-based Itko on an SOA project for the past month. The tool simulates users accessing the web services, in order to gauge response times, Marcotte says.
The SOA project at Cardinal Health involves using web services to access internal company applications and a centralised database. He declined to provide more details because the application could provide the company with a competitive advantage.
Marcotte says he chose Lisa because it will let him use a single tool to test services running from the presentation layer to the database. "We have multiple layers to test, [and] it could be very expensive to buy a tool for each layer," he says.
In addition, Marcotte says, he needed a flexible tool that could easily change the tests it runs when the code in the SOA application changed.