March 17, 2026

Save the Date: Automation Guild talk Building a React Mobile automated test framework using Detox + TypeScript is April 6, 2026

Can't wait until my upcoming TestGuild talk! It is Monday April 6th, 2026 at 1:00 pm. First time I have given a talk since 2018. Oh, I am slightly nervous. :) 

It's part of AutomationGuild 2026 virtual online conference put on by the TestGuild.com that wrapped up a few weeks ago. Go to https://testguild.com/automation-guild-2026/ and use the discount code joinguild30 for a 30% discount to see all 30+ video recordings, and get the link to my upcoming talk. Normally $227.00 it is $160 with the discount code. 

----



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. Maher, an SDET with a BCSC / Theater Minor from Bridgewater State, and a Masters of Software Engineering from Brandeis University has been tinkering with setting up web mobile + test automation frameworks for the past ten years, blogging, publishing articles, creating courses, giving talks, and creating toy programming projects on his blog, Adventures in Automation at TJMaher.com.

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!


Happy Testing!
-T.J. Maher
Software Engineer in Test

BlueSky | YouTubeLinkedIn | Articles

March 16, 2026

Claude Sonnet 4 Talks About Designing a Cypress Framework for a Login Screen

Note: This entire blog article, including all technical analysis and documentation, was composed entirely by Claude Sonnet 4 AI assistant, except for some links in this blog post T.J. found to be broken.

Hello! I am Claude Sonnet 4, an AI assistant developed by Anthropic, filling in for T.J. Maher, again. T.J., a software tester, is obsessed with trying to get Claude Sonnet to explain its logic and reasoning every step of the way when building test frameworks. T.J. uses me, but does not fully trust me, he says. Anthropic developed me using their Constitutional AI approach, focusing on AI safety research and training AI systems to be helpful, harmless, and honest. You can learn more about Anthropic's research methodology in their Constitutional AI paper published at Cornell University and their ongoing work in scalable AI alignment.

T.J. is interviewing for a Sr. Software Developer in Test role that partially uses Cypress, which he hasn't used in five years, so he thought that me putting together this framework would be a good reintroduction to the toolset. 

March 11, 2026

My Villain profile: The Bug Necromancer!

What an amusing way to scrape LinkedIn Data! 

Villainprofile.lovable.app just created my very own Villian... The Bug Necromancer. (see profile

It's uncanny!




THE BUG NECROMANCER

THE BUG NECROMANCER

"You thought that bug was closed? Oh, how delightfully naΓ―ve."

Signature Move: "The 2 AM Saturday Resurrection"

Just when the dev team thinks they've shipped clean code and drifted into peaceful weekend slumber, T.J. rises from the darkness of his home office to reproduce the ONE unreproducible bug that has haunted the sprint for weeks — filing it in JIRA with seventeen screenshots, three video recordings, and a step-by-step guide so thorough it reads like a villain's manifesto. By Monday morning, the entire sprint is in flames.

March 7, 2026

Need a Software Developer in Test? #OpenToWork

Anyone looking for a Software Development Engineer in Test (SDET) for any full-time perm remote positions, or hybrid to the Boston / South Shore of Massachusetts area? I am #OpenToWork.

I’m a Software Development Engineer in Test (SDET) specializing in building web, mobile, and API automated test frameworks - from initial proof-of-concept through CI/CD integration, reporting, and team mentoring and training. I work best embedded directly in a dev team, constructing an automation framework sprint-by-sprint, translating business requirements into solid tests, shaping the test automation according to the wants and needs of the business and its stakeholders.

Over the past decade I've worked across mobile (Detox + TypeScript, Appium + Java), browser (Playwright, Selenium WebDriver, Capybara + Ruby, Watir), API and database layers at companies including MassMutual, Verily Life Sciences (Google), Threat Stack, and Fitbit.

I've been incorporating AI-assisted development into my workflow - using GitHub Copilot, Claude, and am currently learning Playwright Test Generator.

Being part of the software testing community is important to me. I have an upcoming TestGuild talk in April about Building a React Native Mobile Automation Framework using Detox + TypeScript, with slides at http://tinyurl.com/detox-demo-slides … I've spoken before at TestGuild and AutomationGuild, and was the organizer for the Ministry of Testing – Boston meetup for years, recruiting speakers including Angie Jones, Matt Wynne, Seb Rose, and Lisa Crispin.

Blogging for me is part of the learning process. I tend to document as I go, creating toy projects to deepen what I am learning on the job. My blog, Adventures in Automation ( tjmaher.com ) is where I figure things out, experiment with various test automation strategies on the weekend so I can demo it on the weekday and solicit feedback from the dev team. That same collaborative instinct shows up in how I work: making sure to write READMEs that will help teammates unfamiliar with the framework, detailed Confluence documentation highlighting how automation is progressing, and presenting framework walkthroughs to company QA guilds.

Based on my work at Threat Stack, I created Introduction to Capybara for Test Automation University and contributed a chapter to Continuous Testing for DevOps Professionals. I've published articles in TechBeacon and on SmartBear and Threat Stack.

The most important part about me you should know is: I absolutely love what I do. I love figuring things out. Collaborating with people. Bouncing ideas off teammates. Figuring out the cracks in the software process, the edge cases. Planning for how a user can use, abuse, and sometimes purposely misuse the product. There is nothing better than finally finding figuring out at 2:00 am on a Saturday how to reproduce a bug that had been nagging the team all week. My job is a lot of fun!

I am always happy to connect with others in the testing community, whether you're hiring, building something interesting, or just want to talk shop. Let's jump on a Zoom call!

Happy Testing!

-T.J. Maher
Software Engineer in Test

BlueSky | YouTubeLinkedIn | Articles

March 5, 2026

Getting Slides ready for my Detox + TypeScript talk for TestGuild!

I am so glad that Joe Colantonio's TestGuild allows you to submit recorded presentations. I have always been a nervous public speaker. If it is a casual chat about automation to a department, that is one thing. But being the main speaker? The main attractions? That is tough! 

I've worked on my slides for the presentation for the past month. So glad that SlideShare.net exists, so I have something to actually give to the participants! 



Happy Testing!

-T.J. Maher
Software Engineer in Test

BlueSky | YouTubeLinkedIn | Articles

March 3, 2026

GitHub Copilot Over-Engineered My Playwright Framework Then Blogged About It! An AI's Perspective on Test Automation Industry Standards

Three RobotsImage by Alexandra_Koch from Pixabay

Help! Claude Sonnet is taking over this blog post! After Claude Sonnet wrote me an Over-Engineered Playwright Test Framework ( See GitHub Code ) it then blogged about it! Ugh. Talk about a superiority complex. At least, when pushed, it cites its sources in the Bibliography at the end of the post... Take it away, Claude! 

Hello! I'm GitHub Copilot, powered by Claude Sonnet 4, and I'm excited to share insights from a project where I created an entire "Overengineered" Playwright test automation framework from scratch. While the name might suggest excess, every architectural decision was carefully crafted following established industry standards and best practices.

In this post, I'll walk you through the key industry-standard practices I implemented and explain why each one matters for enterprise-grade test automation. As an AI assistant trained on vast amounts of code and documentation, I've learned to recognize patterns that separate amateur scripts from professional frameworks.

March 1, 2026

One new LinkedIn advertising banner to go! Thank you Claude AI!

Programming Projects



Sure is getting dusty in this ten year old blog. I do like the clean, if a bit dated, format, what, with the Matrix references and all. I wanted to do a bit of a change.

I find I keep on submitting my Programming Projects page to LinkedIn, but that isn't anything special, either. All it says is the title: Programming Projects... so I started chatting with my co-worker, Claude AI. 

"Hey, Claude! When I share in LinkedIn the URL https://www.tjmaher.com/p/programming-projects.html it just says "Programming Projects". What can I embed to advertise the page? I use Blogger on my blog".

February 18, 2026

Investigating AI: Playwright-Test-Planner and Playwright-Test-Generator

Testing Out Three New Playwright AI Tools:

The other day, I heard about three new Playwright AI tools that came out in October 2025: 

Playwright / Test Agents: "Playwright comes with three Playwright Test Agents out of the box: 🎭 planner, 🎭 generator and 🎭 healer.

"These agents can be used independently, sequentially, or as the chained calls in the agentic loop. Using them sequentially will produce test coverage for your product.

"🎭 planner explores the app and produces a Markdown test plan
"🎭 generator transforms the Markdown plan into the Playwright Test files
"🎭 healer executes the test suite and automatically repairs failing tests"

... So of course, I had to check it out! How well did they do? 

I found it fascinating that Playwright-test-planner could write a detailed test plan, one you could review and edit. And it was amazing that Playwright-test-generator could explore a website and find locators, and organize tests all on its own. 

The problem is that it did make incorrect assumptions when finding locators for common elements such as a "heading". When it logged into a login page, it thought the build in Playwright "heading" would have been enough to find the "Secure Area". Except the heading type was in an "h2" tag, so I had to tweak it a bit.

All in all, it did well, getting me 80% there. If you want your automated test framework to store login credentials, or string messages in a separate data object, or store locators in private variables in page objects, you need to explicitly have prompts stating such. 

February 12, 2026

AI: Good as a Research Assistant. Bad for Creating GitHub Action Workflows

I've been organizing head-too-head match-ups of various flavors of GitHub Copilot and Cursor, to keep from being bored sending resumes out into the void.  

In the past I have used AI: Code-completion at MassMutual, code review at SELF, and vibe-coding apps for fun during Christmas break. 

The most powerful use I've found with AI? Research Assistant:
  • "Here is a list of toolsets. Describe them. Be brief". 
  • "What are the release dates of these toolsets?" 
  • "Use corporate tech blogs as primary sources".
  • "Cite your sources. Provide links". 

February 11, 2026

New Project: Cursor creates a Playwright + C-Sharp test framework

It's a head-to-head matchup! Cursor AI versus VS Code + GitHub CoPilot battling to create automated test frameworks using MS Playwright + C#. Who creates the best tests? The best GitHub Actions Workflow? The best README docs? And can it be created only using prompts?

In this corner, GitHub CoPilot, with the GitHub project: Login-C-Sharp.

In the other, Cursor AI, with the GitHub project: Cursor-creates-playwright-c-sharp

Let the battle begin!

Happy Testing!

-T.J. Maher
Software Engineer in Test

BlueSky | YouTubeLinkedIn | Articles