Launched Oct. 1, 2013, HealthCare.gov was the public-facing embodiment of what The New York Times called “the most expansive social legislation enacted in decades.” The online marketplace was intended to allow people to begin purchasing health insurance under the Affordable Care Act.
But when they accessed the site, users encountered screens that wouldn’t load, drop-downs that wouldn’t expand and helpdesk sessions that didn’t resolve issues. In its first week of operation, only 1% of the 3.7 million people who tried to enroll in the exchange were successful.
In the decade since, organizations across government have created countless applications and digitized services. While some are produced by contractors, as HealthCare.gov was, a growing number are developed by in-house teams. These tools digitize a broad range of internal workflows and citizen-facing processes. And every time they’re rolled out, enhanced or updated, they risk glitches or poor performance that hamper usability and degrade citizen experiences.
Catching such problems before applications are deployed is the role of software testing. The trouble is, traditional application testing is a manual, time-consuming and cost-intensive process. Pressured by tight deadlines and limited budgets, development teams sometimes skimp on testing – placing agency operations at risk.
The solution is automated application testing using a built-for-purpose solution to verify functionality, performance and other aspects of the software. Automated testing can relieve developers of rote testing tasks. Even better, a no-code/low-code (NCLC) testing solution can allow non-technical employees to handle application testing. The result is a greater likelihood that applications and services will work effectively, scale smoothly and support agency missions.
NCLC and automated testing
Organizations are embracing NCLC in a big way. Spending on NCLC and related technologies is predicted to surge at a compound annual rate of nearly 18% through 2026.
NCLC allows agencies to benefit from prebuilt functionality to develop software with greater speed and precision. Rather than making development teams code every application from scratch, NCLC lets them leverage existing building blocks to assemble new software.
Automated NCLC-based application testing requires a less-technical skillset than traditional approaches. It also makes software quality assurance (QA) faster and more precise.
As a consequence, automated testing solutions are becoming a fixture of the NCLC landscape. In fact, investment in automated testing is expected to grow at a similar pace to NCLC overall – more than 16% – over the next four years.
Empowering development teams
Automated testing can benefit development teams in a number of ways. For starters, it can help them implement and optimize modern methodologies such as DevSecOps.
DevSecOps emphasizes continuous software delivery, with rapid, iterative cycles for designing, coding, testing and deploying new applications and updates. Traditional manual testing can be a major impediment to achieving those goals. It keeps development teams mired in the long timelines and frequent delays of linear development approaches.
Automated testing can reduce test cycles from weeks or months to days or less. It accelerates the process not just when creating new applications but also when adding new application features, updating software to integrate with new IT infrastructure, and applying necessary security patches.
What’s more, automated testing can run numerous tests in parallel. Rather than walk through one scenario at a time, testers can check several at once – for example, simultaneously validating many decision trees or confirming compatibility with multiple web browsers.
In addition, automated testing can free up developers and QA specialists for other high-value work. Relieved of rote testing tasks, they can perform exploratory testing that probes less-common application paths.
Exploratory testing is essential for large-scale application deployments. If a software deficiency affects only 0.1% of users but the program is accessed by millions of citizens, that obscure glitch could result in thousands of calls to the contact center. Uncovering such “edge” cases before deployment can save significant time and money – and meaningfully improve citizen experiences.
Leveraging non-technical talent
But an automated, NCLC testing solution doesn’t just aid the development team. It can also empower non-technical employees to perform software testing. That’s crucial as organizations across government face a critical shortage of technical skills.
With codeless automated testing, agencies can cost-effectively augment their QA teams with entry-level new hires or existing non-technical staff. That can be helpful when budget constraints preclude hiring high-paid technical staff or when reorganizations call for reskilling existing employees. New users can be fully trained on an automated solution in just a week or two.
In fact, software testing can benefit from non-technical team members who have expertise in the workflow or citizen services being digitized. These employees often understand user needs and frustrations better than developers and QA specialists – knowledge they can apply to help fine-tune applications, without the need for in-depth technical skills.
Better outcomes through better software testing
Automated NCLC software testing can help optimize many aspects of government applications:
Functional testing ensures that software capabilities work as intended and are aligned with user needs.
Performance testing places the software under high loads to confirm speed and scalability.
Data integrity testing confirms that data isn’t lost or modified in ways that create negative customer or business impacts
Mobile testing checks the functionality and performance of applications on mobile devices.
User interface testing makes sure citizen-facing services live up to user demands.
Automated testing can enable agencies to deliver and maintain applications and services faster and with higher quality. It helps development teams implement some of the ideas from the DevSecOps concepts. And it allows agencies to benefit from employees who lack technical backgrounds but have expertise in specific domains and services.
Most significantly, automated testing can ensure that agency programs function properly and perform reliably, even as they operate across new platforms or scale to serve more citizens. Ultimately, it helps agencies realize their missions to operate efficiently while serving the public effectively.