Software Testing Leaders, 2019 Is Your Year for Transformation
When you ask high-level managers, CIOs, VP R&Ds, and others what their greatest goals and objectives are, they will all state that maturing their DevOps processes, releasing software and innovation fast and with confidence is among their top of mind. Here, I am not specifically referring to unit testing that would typically be owned by developers, but mostly on the rest of testing that includes functional UI testing, regression tests, and more.
When you double down on the above goals and ask, “what is blocking you from succeeding”? – the main answer is that the pace of development and innovation isn’t in line with the organization team to test and validate the changes. Adapting seamlessly and in an automated fashion to software changes is a great challenge.
As stated in recent on an ITPROPortal article, “DevOps enables innovation, however, testing can hold it back”.
Why is Software Testing so Hard?
To break down the main points for why software testing in the era of digitalization and DevOps is so difficult, we will investigate the following reasons:
- Business testers, Manual testers skillset
- Unstable test automation for mobile and desktop web apps
- Lab-related issues around scaling of resources to reduce test execution time
- Time to analyze results and fast feedback from testing back to development
- Flaky tests noise
When testing is the weak chain in the software delivery pipeline, there is a clear call to action with logical responsibilities to fix that problem.
The Opportunity for Test Management to Lead Change
To solve the biggest pain in DevOps, test managers and directors of QA ought to step up and influence. From a skillset perspective, the test management persona is very well positioned to drive change, since she from the entire organization understands the root causes of the difficulty behind testing. These managers used to be in the tester’s position a few years ago themselves.
Management needs to address the 4 main pillars:
- Test Authoring Simplification
- Test Automation Coverage
- Test Execution Velocity
- Better Test Reporting and Fast Feedback
Test Authoring Simplification
In this bucket, the main problems testing leaders or managers are facing today are among the skill set their testers have. Such skills often block them from automating as much as they would like to. To improve this situation, test managers can do the following:
- Provide very focused and professional test automation mentoring with training, books, conferences, and more. TestCraft has set up a community just for that, here.
- Managers should hire great employees, and should leverage their skills, guide them, and match the market products to the employee skills.
- Offer these testers alternative tools to ease the test authoring process (codeless, record & replay, BDD backed by blackbelt test architects or developers etc.)
- Continuously measure, proof and enhance the skills of the testers, so they excel over time.
- Embed them as soon as possible in the continuous delivery pipeline activities, allow them to contribute to the continuous integration testing, and more.
Because of the above, testing leaders will be able to build trust in the test that is produced regardless of their nature, the tool that was used to develop them, and the employees varying skills.
Test Automation Coverage
The digital landscape today is more complex than ever before. That’s why automating all possible use cases and test flows is hard, sometimes not even reasonable from time and ROI perspective. With that in mind, it is imperative to note that robustness of tests takes priority on quantity. Stabilize, build trust in the tests and scale up. This will get the best results from velocity and overall quality perspective.
To address such pain test managers can lead through change by the following possibilities:
- Build or leverage quality dashboard that shows exactly where are the missing test automation code, and bring these cases to the table to raise their priority
- Perform ongoing test suite reviews to understand if the test coverage is really reflecting the latest product features and scope, then, adjust the test development plans accordingly.
- Leverage easy test authoring tools that can pick missing test automation flows that are either performed manually today or are constantly flaky and failing to cause false negatives.
- Better plan the future software iteration in sync with product management, development leaders so it leaves room to close test automation coverage gaps.
Test Execution Velocity
To speed up release cycles and remove the testing bottleneck, teams must test faster. Testing faster is controlled by the level of lab and cloud commuting they have at their disposal. Automating the entire process including infrastructure set up as it shouldn’t be set up per execution. Velocity means on top of the testing at scale, and the test results analysis (that also separately serves 2 goals – debugging and decision making, as well as velocity).
Executing hundreds of test flows in a very short amount of time while the test engineers need to setup multiple smartphones, tablets, desktop VMs with endless permutations running against 2-3 test environments (QA, staging, production) can be a huge time suck and a pain if there isn’t an efficient lab in place. Here, test managers can embed a centralized lab in the cloud backed by strong enterprise cloud providers that can enable running endless tests on unlimited desktop and mobile platforms with confidence. Such labs have SLA, they are always on and always available, secure and up to date with all the recent market platform releases.
Better Test Reporting and Fast Feedback
Last, but not least, test managers today are challenged with a constantly increasing pile of test data. Such amount of data is impossible to analyze, realize, and act upon in a timely manner. Such thing results in a decreasing level of value coming from the test artifacts. Test managers should introduce smarter test reporting and analysis, backed by machine learning to help drive fast feedback, reduce noise, and better serve the entire DevOps pipeline.
In 2019, testing leaders and QA managers are best positioned to unblock the entire DevOps pipeline blockage. To do so, they should put the above objectives as keys for success. Each bucket in the above can be improved significantly through initial baby steps. Once these steps are proven to help, they can be much heavily enhanced to solve the bigger picture.
Software testing leaders, this is your time to shine!