Service Virtualization

 View Only

Test Automation for APIs and Beyond

By Arif_Muhammad posted Aug 13, 2014 11:08 AM

  

In my previous blog I discussed how API based federated design coupled with Service Visualization can help achieve First day test automation. In this blog I will go little further on automated testing of APIs and enabling end to end business process validation.

 

As you are witnessing today’s enterprise applications are increasingly being built using internal and external APIs. In many cases behind those APIs there can be several interconnected applications, services and databases. Although the end user is just interacting with the presentation layer, a simple end user click can generates a chain reaction of calls to different services encompassing web services, EJBs, legacy apps and databases. While there are many tools out there which will allow the tester to call each of the API individually, the end to end validation of the business process will require orchestration not only across API calls but across different technologies.

 

Business Process Testing is not only testing end to end processes and the complex systems that make up a business process — it requires collaboration between the system designers and implementers. Business analysts who understand the flow of information have the ability to augment and tie Test Cases together gaining end to end testing of a process. Basically Business Process Testing redefines the need for a strong collaborative testing platform.

 

CA Application Test provides a rich feature set to allow collaboration of testing assets and data between developers and analysts along with a powerful framework to Invoke and Verify requests across different services and technologies (as shown in the figure).

imageedit_1_6468712214.gif

These Invoke and Verify steps can be further stitched together to mimic full business process using a visual workflow style test designer. As the requests are being placed verification of those requests can be done using the powerful assertion framework. Since  CA Application Test support's verity of protocols, applications, technologies and interfaces it basically becomes your de-facto client to all underlying components, taking you out of the business of coding, creating and testing throwaway clients. While you are building a test case in CA Application Test, you can simulate a browser dialogue and verify calls against a web service or database, then jump right into staging that test, then jump back and modify your test case while your test is being staged without recompiling or modifying a single script.

When you are creating an automated end to end test you are also trying to validating how the system under test (SUT) will behave with different data. For successful test automation maintaining right set of data used to invoke and verify the API/interface calls is very important. CA Application Test also provides a framework to capture, manage and pass the data to automated tests. Powered by highly scalable architecture CA Application Test's test staging and invocation framework allows on demand as well as scheduled execution of test cases for regression testing as well performance and load testing.

 

Are your teams utilizing CA Application to its full potential?  Please share your experiences on validating end-to-end process using CA Application Test!

0 comments
0 views