DevOps teams need to deliver high-quality web and mobile software quickly to satisfy end customers and keep their employers’ businesses competitive. But it can be difficult to assure product quality when the target devices are undergoing software and browser updates themselves.
Testing remains a DevOps bottleneck because there isn’t enough testing and quality assurance talent available to achieve quality at scale, especially when app updates are being delivered every week or every day. Using Perfecto’s cloud-based continuous testing service, software teams can achieve their release velocity and quality targets consistently using their existing talent.
“One of the things customers like about Perfecto is its flexibility,” said Eran Kinsbruner, chief evangelist at Perfecto by Perforce. “You can write Selenium or Appium scripts to automate tests or you can use machine learning to automatically create tests based on smart and maintainable script recording and playback.”
Because Perfecto is a cloud-based continuous testing platform, DevOps teams that are building mobile and web apps can easily scale testing as necessary across real devices and desktop browsers they don’t have to buy, configure or maintain. When a coding error arises, Perfecto automatically identifies it so it can be resolved immediately. If a device loses a Wi-Fi connection or a screen locks due to poor engineering, Perfecto restores it immediately so continuous testing remains continuous.
The Four Continuous Testing Success Pillars
The Google Cloud team recently released a report that explains the differences between elite DevOps teams and trailing DevOps teams. The trailing teams’ DevOps practices are negatively impacted by the number of manual activities required to achieve test automation and test coverage. They also have trouble identifying the root causes of issues because they lack visibility into the necessary quality artifacts.
“There are four pillars you need to be successful with continuous testing: Creation, Execution, Lab, and Analysis, or CETA as we call it,” said Kinsbruner. “When you can accomplish that all in one place, software quality and delivery speed increase.”
DevOps teams should be able to create robust and maintainable test automation that is agnostic to the skillsets in the organization. With Perfecto, anyone on the team can create automated tests.
Test execution should be orchestrated and able to scale across platforms, browsers and devices, as well as in burst mode.
“When you have an important feature you want to release, and you want to identify issues in a very short amount of time or you have a patch for a large system you want to validate quickly, you need instant access to the high number of platforms you’re executing against,” said Kinsbruner. “People who want to test continuously and scale up or down dynamically need a solid execution layer. Perfecto gives you that.”
Where tests are executed matters. If in-house, hardware, software and browser-related issues arise because each target device manufacturer has its own associated DevOps cycle. Emulators and Simulators don’t help.
Perfecto provides a cloud-based lab — there’s no software to install or test environments to set up and maintain. Its lab is also more secure than an in-house environment because test data doesn’t get lost, and there’s no possibility of a side-channel security issue, such as from a smartphone to a desktop.
Making sense of all the test data that can be generated at scale is difficult without the right tools. Some Perfecto customers generate more than a million scripts in a full regression cycle – far too many for even a brilliant human to analyze. Perfecto uses machine learning to automatically surface the issues and related artifacts as necessary to resolve the issue.
Perfecto also provides users with single-screen access to builds and the tests associated with them, a heat map of issues relating to specific platforms and pass/fail data based on the platforms that were executed. If developers want to drill down into a single test case, they get full visibility into all associated test artifacts including log files, crash reports, HTTP archives, screen shots and video recordings.
“We use machine learning to filter the noise out of the test data, so engineers only have to deal with actual failures,” said Kinsbruner.
Lower Business Risks
Software value and brand image are now synonymous, which is why organizations across industries are racing to deliver apps and features that differentiate them from their competitors. However, they often make tradeoffs between speed and quality that cause customers to complain or churn.
Perfecto helps ensure that the user experiences DevOps teams intend to deliver to customers are delivered to customers.
Content provided by SD Times and Perfecto