"We have approximately 600 applications in the VA and each product line uses their own different automated tools that suits their needs," Coppinger said.
The Department of Veterans Affairs, which serves a population of over 15 million veterans, takes a flexible approach to automated software testing.
VA operates a multitude of applications in multiple lifecycle stages. From cutting edge to legacy, its systems and apps often have hundreds of public-facing web pages. A quality assurance operations team manages testing of these applications, using a homegrown tool that has been enhanced over the last decade, said Todd Coppinger, IT supervisor for software testing and the QA ops team manager in VA’s Office of Information and Technology.
The QA ops team uses what Coppinger described as a mix of basic and complex tools for automated testing. The team aims standardize the automation testing process across the department’s different product lines, he said.
“We have approximately 600 applications in VA, and each product line uses their own different automated tools that suits their needs. It’s not one tool fits everybody’s needs because we have older legacy systems, new systems, mobile devices. … We use a homegrown tool that offers a wide gamut of modules that adapts to a wide range of testing requirements and platforms,” Coppinger said on Federal Monthly Insights – Automated Software Testing.
The QA ops team refers to its tool as the automation tool interface. It’s a suite of open source libraries. The framework can be maintained locally, including on a mobile device all the way to the enterprise level. The team can conduct testing on a large number of applications that include legacy terminal emulators, mobile devices, application programming interfaces and web-based products, he said.
Coppinger, who spent a large part of his career in the private sector, now has a team of six developers at VA, each with 10 to 15 years of experience writing test automation scripts. He explained that he has an affinity for using open source technology that he has been able to bundle together into the framework. One benefit of the QA ops team’s use of open source libraries is financial.
[subhed] A framework for automated testing at VA
“There is a common set of code that is shared among the 55-plus product lines that are currently used in the framework. … This common code saves product lines six months of upfront automation script writing,” he said. “It handles all the complexities of finding components on an application page. We’re saving thousands, if not hundreds of thousands of dollars, by doing this upfront work.”
The framework is modeled into a three-tiered architecture that is easy for nonprogrammers to use, Coppinger said. The framework lets team members share test scripts across products and encourages efficiency in the testing process too, he added.
The QA ops team has adopted a DevSecOps model, which has shifted testing to the development stage. Each product line is developed differently, depending on its testing requirements. The team started out testing newly introduced code quarterly, finding large numbers of errors, and eventually worked down to testing after each sprint cycle, which has saved time and money, Coppinger said.
“While the developer is starting to code, the QA analyst is starting to write the test scripts. … As code is starting to be pushed out of the QA environment, they’re starting to execute their automated tests, they’re starting to think about the automation effort,” he explained on the Federal Drive with Tom Temin.
Even though the infrastructure of applications are not exclusively VA’s, they have their own private cloud that hosts the framework. Working closely with the department’s security team, QA ops is capable of conducting automated testing in different cloud environments.
This has led to the piloting of artificial intelligence and machine learning into the testing process.
“If there’s a change — if a developer makes a change, or a customer makes a change to a website and pushes it out and [the testing] script fails — what AI does is it finds the change, logs it and will continue running,” Coppinger said. “Your scripts will continue to run and log it, so you can see where the change is.”
Right now, the QA ops team is prototyping this AI use in one product line. “It looks very promising because the biggest complaint among project managers is the maintenance factor in test automation scripts,” he said.
For Coppinger, his work at VA is both exciting and personal, and staying up to date on technology is important because it’s helping veterans.
“I’m a disabled veteran. I flew for the Army for a number of years, and I have a disability, so it’s really important that our products are quality, that they perform like they’re supposed to. I have skin in the game.”
Copyright © 2024 Federal News Network. All rights reserved. This website is not intended for users located within the European Economic Area.
Michele Sandiford is a digital editor at Federal News Network.