Alan Page does not shy away from tough questions. As lead author of “How We Test Software at Microsoft” and host of the podcast ABTesting, this “angry weasel” and former Microsofter has been blogging about testing since the days of Windows CE. He often takes a provocative approach to automation and has compiled some of his essays in the book “The ‘A’ Word: Under the Covers of Test Automation.” Page is now the Director of Quality for Services at Unity Technologies, a game development platform.
Q: Can you explain what Modern Testing means to you in five sentences? How about five words?
Alan Page: If I can use six words, I’ll quote the Modern Testing Mission: “Accelerate the achievement of shippable quality.”
The five-sentence version:
At the basic level, Modern Testing is a natural evolution of Agile Testing — with a few important differences, (or evolutions). One important aspect is that modern testers dive deep into customer usage data and use that to drive quality throughout the team. Another key aspect is that while agile testing promotes whole team testing and whole team quality, this doesn’t always happen. In Modern Testing, everyone truly owns quality and everyone truly does testing. In fact, modern testers frequently spend less time testing than their Agile and Traditional peers and more time coaching others on the team how to write great tests, and how to do great testing.
Q: One of your pinned tweets says: “If you want to be a better tester and be an expert in testing, do not even bother learning to write test automation.” You have also said that technical skills are becoming critical knowledge. How do you reconcile this?
AP: The testing industry has confused “technical” and “automation.” I frequently see “technical,” “automation,” and “UI automation” used synonymously.
Testers absolutely need to continue to be technical and continuously grow their technical skills in order to provide value to their teams. But, I think writing automation, especially UI automation, is a horrible way to learn and exercise those technical skills.
I’ve written production code that’s shipped inside of several versions of Windows, and Xbox One. By far, the most delicate, and difficult code I’ve ever had to write has been UI Automation — yet we think this is a good starting point for testers who want to become “more technical.” It’s just a horrible place to start.
Instead, testers should focus on other technical skills. Testers should learn tools like Postman, Wireshark, and Docker. They should be able to write code to aid their testing and make their work more efficient. They should be comfortable with the systems and tools used by the dev team and know how to add new gates to continuous integration (CI) systems.
Q: Has working at Unity changed anything about your gaming habits? With a Master’s degree in music composition, do you ever work with the artists or developers on the music in games?
AP: I’ve always been a gamer. I played a lot of Xbox One games and Xbox games in general while working on that team from 2011 through 2013. I still play games for an hour or two a week, and working at Unity hasn’t really changed that. I do think it’s pretty cool when I see a Unity logo pop up on a game that I enjoy playing. It’s cool to work on products that impact so many people.
Unity makes the game engine and development platform that game developers use to make games, so there’s no direct opportunity for me to work with game developers or artists — but if/when I write my own game using Unity, I’ll definitely write my own music!
Q: Why do you think coaching is a skill for testers and other quality professionals?
AP: I think it makes sense. If the whole team owns quality, having a role that includes coaching developers to become better testers is essential.
I’ve run into some testers who think that testing is a special skill that developers are unable to learn due to their mindset, or background. But what I’ve learned is that teaching developers to test, and getting developers to take on creative testing tasks, isn’t that difficult. But, it does require an investment in coaching, teaching, and mentoring to get the results that enable developers to become good (or great) testers.
Q: As independent test groups fade in favor of testers embedded in the development teams, some headlines seem to have misinterpreted this as “QA is dead.” How would you respond to this?
AP: The King is dead, long live the King.
The whole “X is Dead” thing is about change more than the death of an industry or craft. The way teams approach the quality and testing is changing — but it’s happening because of the way most software is developed and shipped is changing.
In some cases, I guess a change may be big enough that it may seem like a different thing (with the old thing being “dead”) — but it’s just change. And we all should embrace this change rather than resist it.
Alan Page will provide more insight into Modern Testing with his talk “Adventures in Modern Testing” at PNSQC this year. He will also give more tips about Postman, Wireshark and other essential testing tools with a Wednesday workshop “Testing Today’s Web Applications: Tools You Can Use.”