If a customer finds a bug in your application, wouldn't it be great if you could build, test and deploy a fix in hours or days, rather than in weeks or months? Reducing turn-around time and aiming for continuous delivery allows your organization to constantly improve and evolve the applications and services provided to customers. There's no reason why your CICS-based applications and services shouldn't be included in the continuous delivery model.
Continuous integration and CICS
Let's say you have two teams, one team that maintains your CICS applications and infrastructure, and another team that develops the front-end applications which call into CICS. Wouldn't it be great if the front-end application developers could make code changes and test them in isolation, without actually calling into CICS and incurring MIPs? Wouldn't it also be great if your CICS developers and admins could quickly test any changes to verify that they won't break your front-end applications?
With CICS Transaction Gateway V9.1 and Rational Integration Tester V8.6, it is easier than ever before to allow the front-end application and CICS teams to operate more independently. Increasing the autonomy of the two areas of your organization allows you to reduce the turn-around time for application and CICS changes, and reduce cost by removing the unnecessary CICS workload incurred through front-end application testing.
Rational Integration Tester (RIT) is part of Rational Test Workbench and facilitates the testing of both CICS-side applications and client-side Java and JCA applications in isolation.
How does it work?
Using the request monitoring capabilities in CICS Transaction Gateway, Rational Integration Tester records the interactions between the front-end applications and the back-end CICS server. A developer configures CICS TG to enable recording, then exercises all the necessary function of the front-end application. As the developer does so, Rational Integration Tester records all of the request and response data passing between the application and the CICS server. These recorded interactions can then be used to generate test cases and stubs.
Testing CICS changes without the front-end application
The recorded interactions can be quickly and easily used to create test cases within Rational Integration Tester, for testing the behaviour of CICS directly from RIT through CICS TG. After making changes to the CICS system, the system programmer can run the applicable test cases to verify that the changes will not affect existing front-end applications.
RIT also allows test cases to be constructed from scratch rather than from recorded interactions. This allows new CICS capabilities to be tested before a client application has been created to drive them.
Testers can adjust the validation performed by each test case to cater for expected variations in the response data. For example, if the response will contain variable data such as a time stamp, the test case validation rules can be adjusted to match against a pattern, or to not validate a particular part of the response.
Testing front-end application changes without calling CICS
Recorded interactions can also be used to create stubs, for testing front-end Java and JCA applications without making calls into CICS and incurring the cost of additional MIPs. After making changes to the application, the developer can quickly test that the application behaves as expected by using a stub to replace the actual CICS infrastructure.
As with test cases, RIT allows stubs to be created from scratch rather than from recorded interactions. This allows new Java and JCA applications to be tested before the back-end CICS infrastructure is in place.
IBM Rational Test Workbench
Rational Integration Tester is part of the Rational Test Workbench suite of testing tools, which also includes Rational Functional Tester for user interface testing, and Rational Performance Tester for performance and scalability testing. The workbench also includes Rational Test Control Panel, which can be used to manage RIT stubs and test cases, and display test execution results from multiple instances of RIT.
RIT can be configured to write its results to a central database, and the results can then be viewed in Rational Test Control Panel. This allows a test coordinator to oversee test execution and prevent changes that will affect your customers from being promoted into the production environment.
With Rational Integration Tester V8.6 and CICS Transaction Gateway V9.1, it is easier than ever before to adopt a continuous delivery model for your CICS-based applications and services. RIT and CICS TG can remove testing bottlenecks and reduce the workload on CICS generated through testing. By allowing the CICS and front-end development teams to operate independently, your organization can deliver new function more quickly and cheaply without compromising on quality.
More information on CICS Transaction Gateway V9.1 is available in the announcement letter.
More information about continuous delivery and DevOps is available at the IBM DevOps homepage.