Issue #316
Practical Testing Resources 📚
| |||
| Welcome to the 316th issue! Today, I want to highlight Practical Testing. It's a wonderful collection of organised guides on software testing in one place. So whether you want a quick refresher on a technique or you're discovering something new, it's a great place to learn. Kudos to Andrejs Doronins for putting it together and sharing it with everyone. Happy testing! 🙂 | |||
| | |||
| |||
| |||
| | |||
| |||
| AI Readiness Radar How do you know if your team is prepared to code with AI agents? Callum Akehurst-Ryan put together a comprehensive self-assessment radar with five signals to check before. Similarly, Aryadevi Neelakantabhattathiri shares: I thought AI made me a better tester. It made me an honest one. | |||
| Checking Isn't Testing. Soon It Won't Be Employment Either A sobering view by Keith Klain on why we shouldn't accept a narrow view of testing but should invest in skills that matter instead. | |||
| How to Align Quality with Delivery Speed: The False Dilemma Do tests really slow your team down? Alejandro Sierra measured 20 projects for five months and found the opposite. Moreover, Jaclyn Leigh points out that Most Companies Don't Need More QA Engineers. They Need Someone To Tell Them What's Wrong. | |||
| Testing Was Reduced Before Testers Were Blamed In this thought-provoking article, Brijesh Deb explains how the commercialisation of testing made a negative impact on how testing is perceived and why AI will only scale that shallow view further. There's a good discussion in the comments, too. Also, you might be interested in this discussion about 18 years in QA and the biggest mindset shift that actually made me better at testing. | |||
| The 10 QA commandments I left my team before becoming a developer Stanislas Gourévitch shares the direction for his team, including helpful reminders about boundaries, edge cases, shifting left and why hands-on testing still matters. Additionally, Katja Obring describes how not to make the mistake of putting The Wrong Human-in-the-Loop. | |||
| | |||
| |||
| AI-Based Self-Healing CI Loop That Knows When to Quit An honest write-up from Nael Marwan on automating the boring half of test triage. Lots of lessons learned, such as probing before you push and never trusting one AI to hand work to another. Also, Aditya Agarwal explains why Your test suite is the only thing that makes AI agents useful. | |||
| System/UI Tests – The Layer You Should Hate Needing Is your system suite slow and flaky? Kevin Roe shares a simple rule for every test up there. If a lower layer could catch the bug, move it there instead. | |||
| Tests That Don't Lie, Part 1: Readability and DSL Want tests that give you real confidence and not just coverage numbers? Kamil Jędrzejuk shows how Given-When-Then, test data builders and custom assertions make tests read like plain sentences. Continued in the second part. | |||
| The absolute delusion of "100% test coverage" Tests can show bugs are present but never prove they are gone. This Reddit post discusses using coverage as a question about hidden risk areas. Additionally, Martin Ivison shares a story on How 100% Test Coverage Still Kills People. | |||
| The Agentic Test Pyramid The original test pyramid assumes every test gives the same result twice. But what about an LLM in your system? Matthew Boston adds two new layers for non-deterministic parts. Moreover, Phillip Gales describes the Product Unit Tests: A Missing Layer of QA in the Age of AI Engineers. | |||
| What makes AI-written tests unacceptable to you? An interesting discussion among the testing community on AI-generated tests. People warn that a wrong test is worse than no test and suggest gating coverage on changed code with mutation testing. At the same time, Tamar Baratashvili reflects on Automating Tests in the Time of AI: Am I Actually Getting Better?. | |||
| | |||
| |||
| |||
| | |||
| |||
| Canary — QA harness built for Claude Code Want your coding agent to do QA for you? Nayan K. built Canary, a harness that reads your diffs, tests the affected UI flows in a real browser and hands back a Playwright script. I learned about it thanks to Butch Mayhew's newsletter. At the same time, you can also Chaos-Test Your AI Agent following Morgan Wigge's advice. | |||
| How I Standardized a Large Cypress Test Codebase with ESLint and Prettier When a test repo grows, it's easy to deviate from clean code practices. John Ringler shares a few tips on using ESLint and Prettier, pre-commit hooks and a CI step to fix that. | |||
| Serenity/JS 3.43: Testing Electron Apps Do you test Electron desktop apps? Serenity/JS now lets you use the same Screenplay Pattern actions you already know from web testing. Jan Molak walks through the setup. | |||
| What's everyone using for mobile automation testing in 2026? (iOS + Android) What's the best way to keep mobile automation running? Someone on Reddit started a discussion where people share their tools and solutions. Moreover, Josphine Job talks about the One Reason Why Appium Behaves Differently on Android and iOS, while Harshad Bodekar describes how to Build a Composable UI Interaction Engine for Mobile Tests. | |||
| Your Kibana logs are full of test cases. Here is a CLI that extracts them, with auth scrubbed by default. Michael Golikov presents an interesting solution that pulls test cases from Kibana logs, and writes ready-to-run pytest files while keeping data private on your machine. | |||
| | |||
| |||
| How to Only Run Changed Tests in Playwright (Smart Git Integration) Wondering how to make your Playwright test execution smarter? In this 12-minute video, Jarad Saunders explains a simple, helpful way using the Moreover, Faris Kurnia wrote a handy guide describing The Evolution of Locator Strategy in Playwright: Match Accessible Description vs. data-testid. | |||
| | |||
| |||
| | |||
| Thanks for reading! If you enjoy this newsletter and find it helpful in becoming a better tester, please consider sharing it with others. |