4 Steps to Ensure Continuous Testing Success
March 12, 2018

Amir Rozenberg
Perfecto

According to Aryaka's 2017 State of the WAN Report, businesses are running cloud-based apps almost 50 percent of the time. As employers and employees are turning to apps to improve productivity and administrative efficiency, app developers are also resolving to streamline processes to keep apps functional while they release new feature and updates to meet market demand.

2017 saw a number of incidents when apps failed during peak usage times, causing frustration for both consumers and developers alike. The popular college application site Common App crashed 48 hours before the deadline for submissions, leaving thousands of students frustrated and at the mercy of the developers during crunch time. As DevOps teams and developers are looking to make 2018 the year in which technical crises are avoided, continuous testing should be at the top of their resolutions list.

Here are four steps developers and DevOps teams can take to ensure the benefits of continuous testing are effectively implemented throughout the development process:

1. Team Autonomy Accelerates Velocity

With teams facing increased pressures to deliver more functionality into an application, teams are moving to decreasing dependencies across squads. Teams with a lot of dependencies spend more time on waiting on others or managing interactions that slow down releasing new features to production.

Mature, Agile teams are increasing squad autonomy as they are taking on more responsibility to maintain pre and post production service quality. DevOps teams reuse test automation developed during preproduction to continuously validate user experience in production. In the world of Agile and increasingly DevOps, squads are doing more themselves and intentionally minimizing unnecessary dependencies.

2. Shift Operations to Dual-Monitoring of the Front-End and Back-End

Traditionally, developers have monitored performance based on back-end activity with limited focus on the front-end. However, with the rise of native mobile apps and an increasing amount of client-side logic being executed, the front-end has become increasingly important to monitor. This architectural shift changes how operations teams must expand their focus from back-end monitoring to a dual-monitoring pattern to continuously understand how both the front and back end are performing.

Directing attention to the front-end allows DevOps teams to monitor and refine key user experience performance baselines – i.e. app responsiveness and loading lags. These baselines should be refined over time; however, DevOps can establish and test these baselines during pre-production, not post. Shifting this front-end testing to production provides early warning of user experience degradations.

3. Know Your End-User and Test in Non-Ideal Environments

To deliver a successful experience, you must know your end-users. This applies not only to design and user experience (UX), but also to understanding consumers usage patterns and degraded environments. It's important to understand how your platform will perform in all environments, not just the ideal ones.

Continuous testing provides DevOps teams the opportunity to test for different scenarios ahead of launch. Keeping end-user demographics in mind, DevOps teams can run tests for pre-identified metrics earlier in the overall development process, allowing for bugs and defects to be identified and resolved in a timely manner via continuous testing of all KPIs. DevOps teams should not only monitor for these demographics once the app has launched but should test in non-ideal environments during the pre-production stage. Testing for instances such as poor connectivity or low memory/battery scenarios that impact location-based transactions, will improve overall UX and avoids any trouble-shooting headaches for the DevOps team.

4. Incorporate Lessons Learned for Future Builds

Continuous testing not only automates a number of tests that were previously performed manually, it also offers valuable insights around what works and what doesn't. For continued success, DevOps teams must take what they learned from continuous testing and apply it to future builds. An aligned team structure will allow the development team to embed certain deliverables and benchmarks that they weren't able to anticipate in the initial launch, into the current version of the app they are working on. This will strengthen future builds while also allowing DevOps teams to focus their efforts on testing and correcting for new issues that may arise.

If your resolution for 2018 is to have a year with fewer crises, the first and best step is to implement continuous testing practice. Continuous testing is an effective enabler to the app development process that will benefit everyone involved.

Amir Rozenberg is Director of Product Management at Perfecto

The Latest

August 15, 2018

Microservices are a hot topic in IT circles these days. The idea of a modular approach to system building – where you have numerous, smaller software services that talk to each other instead of monolithic components – has many benefits ...

August 13, 2018

Agile is expanding within the enterprise. Agile adoption is growing within organizations, both more broadly and deeply, according to the 12th annual State of Agile report from CollabNet VersionOne. A higher percentage of respondents this year report that "all or almost all" of their teams are agile, and that agile principles and practices are being adopted at higher levels in the organization ...

August 09, 2018

For the past 13 years, the Ponemon Institute has examined the cost associated with data breaches of less than 100,000 records, finding that the costs have steadily risen over the course of the study. The average cost of a data breach was $3.86 million in the 2018 study, compared to $3.50 million in 2014 – representing nearly 10 percent net increase over the past 5 years of the study ...

August 08, 2018

Hidden costs in data breaches – such as lost business, negative impact on reputation and employee time spent on recovery – are difficult and expensive to manage, according to the 2018 Cost of a Data Breach Study, sponsored by IBM Security and conducted by Ponemon Institute. The study found that the average cost of a data breach globally is $3.86 million ...

August 06, 2018

The previous chapter in this WhiteHat Security series discussed dependencies as the second step of the Twelve-Factor App. This next chapter examines the security component of step three of the Twelve-Factor methodology — storing configurations within the environment.

August 02, 2018

Results from new Forrester Consulting research reveal the 20 most important Agile and DevOps quality metrics that separate DevOps/Agile experts from their less advanced peers ...

July 31, 2018

Even organizations that understand the importance of cybersecurity in theory often stumble when it comes to marrying security initiatives with their development and operations processes. Most businesses agree that everyone should be responsible for security, but this principle is not being upheld on a day-to-day basis in many organizations. That’s bad news for everyone. Here are some best practices for implementing SecOps ...

July 30, 2018

While the technologies, processes, and cultural shifts of DevOps have improved the ability of software teams to deliver reliable work rapidly and effectively, security has not been a focal point in the transformation of cloud IT infrastructure. SecOps is a methodology that seeks to address this by operationalizing and hardening security throughout the software lifecycle ...

July 26, 2018

Organizations are shifting away from traditional, monolithic architectures, with three-quarters of survey respondents delivering at least some of their applications and more than one-third delivering most of their applications as microservices, according to the State of DevOps Observability Report from Scalyr ...

July 24, 2018

What top considerations must companies make to ensure – or at least help improve – Agile at scale? The following are key techniques and practices to help accelerate Agile delivery rollouts and scale Agile and DevOps in the Enterprise ...

Share this