Background: When your company creates AI infused industrial analytical applications for large enterprise organizations, quality control and innovation begins and ends with its DevOps team. For them, load testing vast amounts of data across their entire pipeline was a critical requirement: automation was the key. For software engineers tasked with managing, developing, and running a LoadRunner testing script, found it challenging not having the ability to run it continuously and capture the result in an automated format. As a part of Quality Assurance, the team needs to manage the entire DevOps lifecycle, including continuous deployment and continuous testing.
Goals: Automate LoadRunner Software’s load and functional testing and run throughout the entire CI/CD process
"Life without Jenkins is no life for an engineer."
Solution & Results: We started by exploring possible Jenkins capabilities and its rich set of plugins with almost every CI-CD and testing software. Our scripts are in LoadRunner, but nobody knew how to run them in conjunction with continuous integration software. Facing these technical challenges, we created a Freestyle job in Jenkins and used the LoadRunner Plugin for our tests. Since the load testing target machine needed to be higher in CPU and RAM size, we added a remote AWS node as a runner machine. We incorporated and added the token and connection capabilities with Jenkins to communicate with that machine.
With the basic setup to run tests complete, we then used a Jenkins LoadRunner plugin called 'Execute Micro Focus tests from the file system.' We also used plugins for reporting that will run the LoadRunner agent and start executing. When it completes its analysis, it generates an outstanding report.
We can automate all of these processes with Jenkins, and rely on the following Jenkins capabilities:
Jenkins Micro Focus Application Automation Tools plugin (this helped us integrate LoadRunner Project into CI/CD)
Automated hooks via integration with SCM polling
Remote node adding
Post-Run steps for the reports
Jenkins has allowed us to efficiently ship and perform our audit cycle, although there clearly are some places where we ought to do this task more frequently.
Life without Jenkins is no life for an engineer! Using Jenkins, we discovered:
increased running time and automated trigger
reduced manual running and maintaining of artifacts
automated reporting and scaling via connections to a remote machine
ability to provide faster feedback using Jenkins integration