Most applications today are service-oriented or N-tier, using a Web server, application server and one or more...
databases. Both architectures can become quite complex, comprising multiple components, servers and physical locations. Can changes in one tier or component cause problems in the others? The answer is a resounding maybe.
First, one should test the individual components of business logic, user interface, services and data access layers. This testing isn't really about evaluating the dependencies among systems, but nevertheless is vitally important. For example, if a change to component A makes component B stop working, maybe component A is broken. But before getting into the complications in their interactions, make sure A and B are both functioning as expected.
Enterprise architectures often have complex interactions, which means that passing data from one layer to the other may be the weak link in the chain. How does one test these interactions? In most cases, this is done either through SOAP testing or API testing. Assuming that the services have been fully tested, you'll need to ensure that a similar quality exists at the interfaces. Companies and other services utilizing your components have to have a high level of confidence that the quality and performance of those components meet their standards.
Additionally, you have to test not only your software, but also the SOAP or API interfaces. There are specialized tools for this kind of testing, including SmartBear's Ready! API and Parasoft's SOAPTest. Although you may not need these specialized tools, making sure that the interfaces are sufficiently robust and high performing so as to add immediate value to any solution you propose.
Finally, if you are using a legacy component architecture such as Common Object Request Broker Architecture (CORBA), convince your organization to get out of it as soon as you can and use either traditional Web services or APIs. CORBA was both highly complex and difficult to test, and so most software teams have since moved on to more modern architectures.
Learn about testing mobile and embedded user interfaces
Dig into streamlining integration services
Learn more about API design
Find out why cloud integration services are gaining ground
Dig Deeper on Cloud Application Testing
Related Q&A from Gerie Owen
As a junior tester, I think learning scripting languages could make me more valuable to my team and enhance my career. But how do I pick the ... Continue Reading
DevOps teams use chaos engineering, but at what cost? Learn how this testing method secures applications in ways that traditional testing can't. Continue Reading
You want to attend a software testing conference, but your employer said it's too expensive. Here are some ways to improve your chances to attend. Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.