Update: the slides from Gary’s presentation are available!
Let’s talk about one of the last bastions of “big bang” rollouts, highly specialized and isolated teams, and the “throw it over the wall” mentality: the way most companies approach automated UI testing when building a delivery pipeline. But wait, I thought we were all “agile” and “DevOps”? 🙂
Building and maintaining test automation is a daunting task for many organizations. Companies with legacy applications often have a significant amount of technical debt around quality and testing, but even startups struggle once they scale beyond a few coders. In addition, functional/UI testing with automated tools is a specialized, high-demand skill, leading to the “throw it over the wall,” separate projects and teams, and “big bang delivery” approaches. This is quite ironic when the test automation effort is for an application that’s part of the organization adopting Agile / DevOps mindsets and practices!
The promise of Agile frameworks – and now DevOps – has always included cross-functional teams, incremental rollout, and a focus on highest-value deliverables first. Let’s talk about how we can leverage these ideas and practices with a traditionally big bang, highly-specialized team area like test automation. We’ll cover people, practices, and tools, including:
- Fostering teams that understand quality and test automation are a shared responsibility – not just “the tester’s problem”
- Addressing objections to using high-dollar skills inside of generalized, cross-functional teams
- Identifying the highest-value parts of a massive test suite
- Adding – and even more importantly, maintaining – automated tests in an incremental way
- Evolving application architecture towards loose coupling, to leverage the Test Automation Pyramid
- Inspecting and adapting our test automation processes