Adventures in Automation
Stories for Software QA Engineers shifting from manual to automated testing.
April 16, 2026
April 14, 2026
Can You Prompt Claude Into Being A Good Tester? Experiments with AI-Assisted Testing
- Claude Sonnet 4 silently drops requirements you spell out.
- Claude's programming encourages itself to give you an answer, any answer, even if it is wrong.
- Claude always pats itself on the back. It's code is the best ever! You question it. It sulks.
- Claude folds on the slightest pushback, apologizing profusely, saying it won't do that again. But it always, always does it again.
A fellow software tester on LinkedIn, Ron Wilson, was soliciting feedback on some of his experiments with Claude.
April 1, 2026
Python Project: Blogger Spam Bulk Deleter Code Walkthrough: Pair-Coded with Claude but Human Explained!
Problem: My blog, Adventures in Automation, has collected over 11,000 spam comments over the past ten years, and unfortunately bare-bones Blogger.com does not have a bulk delete function. Through the Blogger UI, you can only delete a hundred at a time.
Pair-programming with Claude.ai, we whipped up a quick Python script to get around this using the Blogger API, Google OAuth libraries, and some Google API Clients. The errors that appeared after running the code, I fed back to Claude, who then fixed the issues, and added some setup documentation I was able to muddle through.
- Blogger Spam Bulk Deleter: https://github.com/tjmaher/blogger-spam-bulk-deleter
So, now I have a Python project that works somehow, but one I don't really understand. Since becoming an automation developer, I have worked on-the-job with Java, Ruby, JavaScript, and TypeScript, but not yet with Python.
Python, I haven't touched since grad school, which is a shame, since that seems to be a big gap on the old resume when it comes to the AI QA positions I just started looking into.
Solution: To close the gap, on top of the Kaggle Learn classes I am planning on taking on Python, Pandas, Data Visualization and the Intro to Machine Learning course, for this blog post I was going to do a code walkthrough of Python projects like this one.
Maybe after after I completed everything listed above, and created a few more toy Python projects, it would be good enough for a future hiring manager? Who knows?
March 31, 2026
When Claude Acts Like a Clod: Catching AI Fabrications: A QA Engineer's Field Notes
- Blogger Spam Bulk Deleter: https://github.com/tjmaher/blogger-spam-bulk-deleter
- Looking for technical information? Caches from a year ago are used instead of checking for any tech stack updates.
- Need AI to recheck a web page after editing it with AI's suggestions? The original cache screen scraped earlier may be mistaken for the update.
- Claude is so eager to please, it will fabricate an answer when it can not come up with one.
March 29, 2026
Becoming AI QA: Jupyter Notebook + Python
In the last post, with the help of my lovely Research Assistant, Claude, we traced how Python went from Guido van Rossum's holiday project in 1989 to the de facto language of AI and machine learning.
Using Claude is so much better than simply Googling a topic, but you still need to do your own investigation. Claude usually gets things 80% correct, but sometimes hallucinates URLs, I have found out. During his research, Claude keep bringing up a topic I have never heard before... Jupyter notebooks... What, is that a typo?
What Is a Jupyter Notebook?
According to the Project Jupyter official documentation, a Jupyter Notebook is a web-based interactive computing platform. The notebook combines live code, equations, narrative text, visualizations, and interactive dashboards into a single shareable document.
The file format is .ipynb -- short for "IPython Notebook," a holdover from the tool's origins.
A notebook is organized into cells. Each cell is either:
- Code -- runs in a programming language (usually Python) and shows output directly beneath it
- Markdown -- prose, headers, links, and LaTeX math notation, written between code cells
- Project Jupyter homepage: https://jupyter.org/
- Official Jupyter Documentation: https://docs.jupyter.org/
- Official Jupyter Blog: https://blog.jupyter.org/
- Project Jupyter on GitHub: https://github.com/jupyter
March 28, 2026
QA Blogosphere
-T.J. Maher
Software Engineer in Test
BlueSky | YouTube | LinkedIn | Articles
March 27, 2026
Becoming AI QA: Why Python? How AI and Python became linked
Becoming AI QA: Would becoming an AI QA Engineer make myself more marketable? What should I study?
- Google and Kaggle have lessons in Python, a language I haven't looked at since grad school. There also is Automate the Boring Stuff with Python by Al Sweigart. Kaggle has lessons in Pandas, Pytest, and Data Visualization. (See Kaggle.com/learn).
- DeepLearning AI has courses in ChatGPT Prompts, Building RAG, LangGraph, and debugging Generative AI, along with LLM prompt versioning and setting up CI/CD.
- Hugging Face has an LLM course.
- Google has a Machine Learning crash course.
- OWASP has a Top 10 for LLMs.
- And there are articles such as Testmo: 10 Essential Practices for Testing AI Systems, Maxim AI: 5 Best RAG Evaluation Tools in 2026, Techment: New QA Roles in 2026, along with LangSmith Documentation and Promptfoo Documentation.
- And there is something called.. Jupyter notebooks... I should look into?
- Test AI and LLM App with DeepEval, RAGAs and Ollama
- Complete RAG Testing with RAGAS, DeepEval, and Python
- Mastering LLM Evaluation: RAG and Agentic AI
... Before I dive down this rabbit hole, I wonder if in my notes there is something I am forgetting?
March 19, 2026
Conversations with Claude: Why do QA Engineers call it 'Test Setup' or setting up 'Pre-Conditions' for a test, while DEVs calls it 'Seeding'?
... Er, what? Why do they use that term?
Hey, Claude! How come I only have heard this term in the past year or two?
March 17, 2026
Save the Date: Automation Guild talk Building a React Mobile automated test framework using Detox + TypeScript is April 6, 2026
----
Building a React Mobile automated test framework using Detox + TypeScript
React Mobile's slow-loading components and dynamic animations can cause timing issues resulting in flaky tests. T.J. Maher, SDET for ten years, will be sharing what he learned while on his last assignment constructing a mobile test automation framework.
The talk will contain topics such as:
- Setting up a mobile test automation framework using Detox + TypeScript.
- Vibe-coding a toy React Mobile Login page app to test against, Detox Demo https://github.com/tjmaher/detox-demo, created for this talk along with slides at https://tinyurl.com/detox-demo-slides.
- Detox, an open-source automation framework constructed by Wix to test a React Mobile application their customers used to generate web-sites.
- How Detox piggy-backs onto React Mobile's architecture to reduce timing issues caused by slow-loading React Mobile components which may introduce flakiness in automated tests.
- Refactoring code into tests, page objects & base pages, separating out credentials and message strings for easier maintainability.
- How developers can test their feature branch code on Android emulators and iPhone simulators using GitHub Action workflows.
- How to integrate Allure Reports into your GitHub Action workflows.
- Setting up security testing using Snyk.
Speaker: T.J. Maher
T.J. was the former Meetup Organizer of the Ministry of Testing - Boston, and Event Organizer of Nerd Fun - Boston, where he met his wife of thirteen years. T.J. is more Star Wars while his wife is more Star Trek. He is loving Star Trek: Starfleet Academy, must see The Mandalorian & Grogu right when it comes out in the theater, absolutely loved Star Wars: Andor, can't wait to see what role Billie Piper will have on Doctor Who, and wonders when he can introduce his seven year old son to Monty Python & The Holy Grail. T.J., his wife, and his rambunctious son live in Bridgewater, MA.
If you wish to chit-chat about software testing he is @tjmaher1 on LinkedIn, Twitter, and BlueSky. Follow him on LinkedIn!




