6
www.hexaware.com Test Automation in Mainframe Systems

Test Automation in Mainframe Systems

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Test Automation in Mainframe Systems

www.hexaware.com

Test Automation in Mainframe Systems

Page 2: Test Automation in Mainframe Systems

Introduction

Challenges

Solution

Solution Architecture

Conclusion

References

2

2

3

4

5

5

Table of Contents

1www.hexaware.com | [email protected]

Page 3: Test Automation in Mainframe Systems

2www.hexaware.com | [email protected]

Mainframes continue to play a critical role in financial services industries. 92 of the top 100 banks continue to depend on the mainframe to support critical business process ranging from credit cards, ATM transactions to batch runs for high volume of reports. Mainframe system’s resilience and ability to handle large volumes have been crucial for the smooth functioning of the financial services industry. It is estimated that Mainframes run 30 billion transactions per day and handle $3trillion in daily commerce. Almost 90 percent of all credit card transactions involve a mainframe.

Introduction

Another challenge is that different parts of the organization move at different speeds – such as compliance and security processes, systems of engagement, and teams in mainframe.

Among the reasons cited, one is the time taken to release new features for customer facing applications. There is a growing expectation that all systems including mainframes can support faster releases.

To accelerate the release cycles, a phased approach needs to be taken for measurably modernizing mainframe practices, based on every organizations’ own existing processes, tools and culture that can best fit their client’s needs.

One of the focus areas is to explore if mainframe automated tests and DevOps solutions in areas such as unit testing or deployment can be brought in to hasten the delivery cycle. Every organization is at a different level in the automation cycle while there is a consensus that they would like to automate frequently used wellness checks and regression scenarios.

Customers today look at automating their repetitive manual operational tasks on their mainframe systems that are labor intensive, prone to errors and not very cost effective. For example, testing of end-to-end scenarios require traversing both mainframe and distributed technology applications built on Java stack.

Challenges

However, in a 2016 study from Forrester, nearly 90% respondents said they experience challenges with mainframe application development and delivery that make it difficult to innovate at “digital business speed”.

Additionally, the instances where teams operate in silos and the manual steps involved in coordination between them result in delays in the handover between internal teams, adding up to the overall development cycle.

Breaking these silos is a challenge since these are in completely different technology stacks. This leads to dependencies on the availability of functional consultants for their expertise in performing functional tests.

Page 4: Test Automation in Mainframe Systems

3www.hexaware.com | [email protected]

SolutionHexaware worked with this Financial services provider and broke down the problem statements into 3 components:

B. Integrate with distributed application automation regression test suite Mainframe automation library can be integrated with web automation test scripts written in Java - Selenium. The mainframe emulator libraries provide session class which contains all the methods needed to perform operations on the mainframe. Selenium Web Driver can be used for performing operations on the distributed applications. You can write test scripts using Java for both web-based as well as non-web based application (i.e. Mainframe).

C. DevOps integrationMainframe automation: On successful code promotion, a mainframe JCL (Job Control Language) can trigger automatic email of the software release notes, that captures the source region, target region and list of packages that have been promoted. Jenkins build trigger plugin “Poll Mailbox Trigger” can mark the new email as read and trigger a new automation job. The DevOps jobs can be triggered automatically as well as manually on Jenkins using Job Scheduler. The automation job can launch the Jagacy emulator automatically for performing operations on the mainframe screen. After the execution of source code is completed, Serenity with Cucumber report will be generated, and email notification related to build status with pass or fail status will be triggered. The end-to-end continuous testing helps in faster feedback and turnaround time to aid in development with no manual deployment and manual communication between various teams.

Bring the mainframe test suite into a DevOps

pipeline to eliminate silos and bring down the overall feature

release cycle

Integrate with distributed application automation regression

test suite

Create mainframe automation test

suite in a modern language

A. Create mainframe automation test suite in a modern language An Automation suite entirely written in Java leveraging the possibilities provided by an open source library-built screen scraping mainframe emulator like *Jagacy. This automated test suite empowers all developers to validate and troubleshoot any changes they make to mainframe applications quickly, easily, and accurately. You can use the Serenity BDD with Cucumber framework for developing test scripts and XML as input to test scripts. Firms can also use properties file for each environment/region to maintain the user credentials and URL for that specific environment. Test scripts can be executed for multiple test regions and test scenarios via parameterization.

*Jagacy 3270 is a Mainframe emulator (screen scraping technology) built using open source platform JAVA. It is also called Swing 3270. We can execute the test scripts and capture screenshots in headless mode i.e. without opening the window/session. Thus, we can perform parallel tasks while the automation test script is executing in the background. We can write text into the fields, read from the fields or specific positions, wait for applications / screen unlock and simulate pressing keys on the keyboard (i.e. PF3, TAB, Enter,...).

Page 5: Test Automation in Mainframe Systems

4www.hexaware.com | [email protected]

An overview of the solution is described below:

Accessing Mainframe terminal from DevOps pipeline has challenges. But using Swing 3270, we can execute the test scripts on the Jenkins. For that the mainframe test scripts execution host machine should be on the same network on which Jenkins slave machine exists. The open source JAVA automation is integrated with Selenium automation to provide seamless end-to-end execution between mainframe and distributed systems. A mainframe JCL can automatically trigger automatic release notes email, once mainframe code has been promoted. Jenkins “Poll Mailbox Trigger” can trigger automation jobs based on new release notes email with no manual intervention.

Send Email Notification

Generate Serenity with Cucumber

Report

Invoke Jagacy Application

Screen ScrappingSwing Emulator

Jagacy Emulator

Mailbox

Automatic email Trigger

Pollingfor unread email

Push source code into repository

Mainframe

Slave Machine

Bit Bucket

Automatically Trigger

To build automation test

Jenkins

Source code

Read POM file and execute code

IBM Pcomm

TriggerExecution

JenkinsSlave Machine

Automatically Trigger Job

ManuallyTrigger Job

JobScheduler

Poll MailboxTrigger Plugin

MainframeJCL

Bit BucketPlugin

GitRepository

AutomationSource Code

Jenkins Server

Solution Architecture

Page 6: Test Automation in Mainframe Systems

© 2021 Hexaware Technologies limited. All rights reserved.www.hexaware.com | [email protected]

Safe Harbor StatementCertain statements in this press release concerning our future growth prospects are forward-looking statements, which involve a number of risks, and uncertainties that could cause actual results to differ materially from those in such forward-looking statements. The risks and uncertainties relating to these statements include, but are not limited to, risks and uncertainties regarding fluctuations in earnings, our ability to manage growth, intense competition in IT services including those factors which may affect our cost advantage, wage increases in India, our ability to attract and retain highly skilled professionals, time and cost overruns on fixed-price, fixed-time frame contracts, client concentration, restrictions on immigration, our ability to manage our international operations, reduced demand for technology in our key focus areas, disruptions in telecommunication networks, our ability to successfully complete and integrate potential acquisitions, liability for damages on our service contracts, the success of the companies in which Hexaware has made strategic investments, withdrawal of governmental fiscal incentives, political instability, legal restrictions on raising capital or acquiring companies outside India, and unauthorized use of our intellectual property and general economic conditions affecting our industry.

India Headquarters152, Sector – 3

Millennium Business Park

‘A’ Block, TTC Industrial Area

Mahape, Navi Mumbai – 400 710

Tel : +91-22-67919595

Fax : +91-22-67919500

EU HeadquartersLevel 19, 40 Bank Street,

Canary Wharf,

London - E14 5NR

Tel: +44-020-77154100

Fax: +44-020-77154101

Level 3, 80 Mount St

North Sydney

NSW 2060

Australia

Tel : +61 2 9089 8959

Fax : +61 2 9089 8989

Australia HeadquartersAPAC HeadquartersAsia Pacific Pte Ltd, #09-01,

One Finlayson Green,

1 Finlayson Green

Singapore-049246

Tel : +65-63253020

Fax : +65-6222728

NA HeadquartersMetro 101, Suite 600,101

Wood Avenue South, Iselin,

New Jersey - 08830

Tel: +001-609-409-6950

Fax: +001-609-409-6910

Hexaware is the fastest growing next-generation provider of IT, BPO and Consulting services. Our focus lies on taking a leadership position in helping our clients attain

customer intimacy as their competitive advantage. Our digital offerings have helped our clients achieve operational excellence and customer delight. We are now on a

journey of metamorphosing the experiences of our customer’s customers by leveraging our industry-leading delivery and execution model, built around the strategy—

‘AUTOMATE EVERYTHINGTM, CLOUDIFY EVERYTHINGTM, TRANSFORM CUSTOMER EXPERIENCESTM.’ Hexaware services customers in over two dozen languages, from every

major time zone and every major regulatory zone. Our goal is to be the first IT services company in the world to have a 50% digital workforce.

Learn more about Hexaware at http://www.hexaware.com

About Hexaware

References1. Compuware’s “Ten Steps to True mainframe agility”2. Automated Acceptance testinging for Mainframe with Cucumber and Jagacy” by Upgundecha3. http://www.jagacy.com/Jagacy3270.pdf4. https://www.ibm.com/developerworks/systems/library/es-zosdisterm.html5. https://github.com/jenkinsci/poll-mailbox-trigger-plugin#:~:text=The%20poll%2Dmailbox%2Dtrigger%20is,triggers%20a%20new%20job6. http://www.ibmmainframeforum.com/jcl/topic11010.html

A wholistic approach that harnessed open source platform, screen scraping tool, handover process, collaboration and DevOps technology helped come out with a solution that facilitates elimination of silos and brings down the overall feature release cycle.

The open source mainframe automation suite helps to automate repetitive labor intensive, and error prone mainframe manual operations tasks. This open source mainframe automation further integrated with Selenium automation provides seamless end-to-end execution traversing both mainframe and distributed technology applications. Using swing 3270 we can execute the test scripts on Jenkins. Automating the mainframe release notes and leveraging Jenkins plugin to capture automatic release notes emails to trigger automation jobs helps remove manual intervention and bring mainframe test suite execution into a DevOps pipeline.

This approach can help firms looking for mainframe automation to achieve faster feedback and turnaround time, and significantly reduce the time-to-market.

Conclusion

Amit Manjesh is a technology lead focused on customer success, achieved by driving testing resources against client projecttesting goals and deliverables. Amit has been part of the IT industry for most part of the two decades, being abreast with the everchanging landscape and rapid changes. The last 5 years he has been engaged with the Banking and Capital Markets client, gaining valuable experience in buildingand leading a team with a goal to deliver technology projects on time and within budget across locations like UK, Netherlands, US and India.

Pratiksha Nalawade is an Automation Tester with experience in mainframe, database and web application automation. Building robust

framework from scratch by integrating different technologiesi.e. for mainframe automation using open source library and selenium technology for web application automation. She has an experience of

integrating test scriptswith CI/CD tools i.e. Jenkins using versioncontrol tools like SVN or Git.

Author details