DEV Community

Modern Web

S10E18 Modern Web Podcast- Software Testing Strategies and Real User Engagement with Andrew Knight

Andrew Knight, popularly known as automation panda, was recently interviewed on the Modern Web Podcast by host Rob Ocel. Andrew, a software quality champion, developer advocate, and test automation expert, shared his insights and experiences in the interview. He spoke passionately about testing and the importance of improving software quality. Andrew discussed the challenges he faced early in his career and how he recognized the opportunity to enhance software stability, readability, and speed through effective testing.

The conversation then shifted to the current state of testing in various tech communities. Andrew highlighted the wide variation in testing practices across companies, irrespective of programming languages or tech stacks. Smaller companies often lacked proper testing processes, while larger companies relied on traditional testing approaches that were deeply ingrained.

Advancements in web testing frameworks and tools were another topic of discussion. Andrew acknowledged the long-standing availability of functional testing, which simulates user interactions with a website. However, he pointed out the emergence of newer tools like Cypress and Playwright, which provide a modern developer experience, making web testing more accessible, efficient, and enjoyable. Andrew also emphasized the importance of addressing user experience and visual aspects of testing, where human evaluation remains crucial but can be supplemented by visual testing tools like Applitools.

The interview concluded with a glimpse into the future of autonomous testing. Andrew highlighted that while autonomous testing could never completely replace human exploratory testing, it held potential in understanding the behavior of software applications. The vision was to train autonomous agents to recognize established workflows, adapt to specific applications, propose test cases based on observed behaviors, and potentially execute these behaviors autonomously. This approach would allow developers to focus more on designing desired behaviors and less on implementing specifications.

Throughout the interview, Rob Ocel and Andrew Knight discussed the trade-off between investment and return in software testing. They reflected on the value of maintaining extensive test coverage and questioned its significance compared to the effort required to sustain it. Andrew emphasized the importance of focusing on valuable behaviors and understanding customer needs when prioritizing testing efforts. They also touched upon the idea that not all edge cases or hypothetical scenarios warrant investing time and resources in testing if they have minimal real-world impact.

Other topics covered in the interview include Andrew's talk on the eight Software Testing convictions, inspired by Japanese woodblock prints, which emphasize intentional design, accessibility, and the value of quality in software development. The discussion also revolved around the value of personas, engaging with real users to understand their needs and prioritize testing efforts accordingly. The interview highlighted the delicate balance between investing in quality and delivering value in software development and testing, with a focus on valuable behaviors and iterative learning from user interactions.

 

Host

Rob Ocel, Software Architect at This Dot Labs

 

Guest

Andrew Knight, Principal Developer Advocate at Applitools

 

This episode is sponsored by This Dot Labs.

 

Episode source