Articles and Blog Posts
Documents
Data Testing Analysis Heuristics: A categorized set of heuristics focused on testing problems with data.
Heuristics for Claims Based Testing: Claims about a product are good source of testing ideas. We can often find issues by analyzing claims and seeing if they are true, contradictory, or introduce problems.
Heuristics for Testing Software Dependences: A categorized set of heuristics focused on testing ideas for dependencies between components in a system.
Heuristics for Flow and Scenario Testing: A categorized set of heuristics focused on testing scenarios and sequences of actions.
Fast and Easy Failure Mode and Effects Analysis (FEFMEA): A shorter and easier version of FEFMEA I use for software testing.
AI Guidance, Augmentation, Tolerances and Enforcement Analysis (AIGATE). A method for analyzing and assessing safe design and usage of AI-based systems.
How to do test reporting. A presentation on different ways of formatting and representing a test report. Download to view.
Software Testing Video Channel
Software Testing is my YouTube channel where I share testing ideas, approaches, and live testing examples.
Below is a screen shot of one of my videos where I demonstrate testing on a game I am working on.

My LinkedIn Posts
Some time ago I started posting a series of cartoons with commentary on LinkedIn. They are hard to find up there, so I put a link to the list of them in here.
AI and Testing
Words are not Enough: About AI Inability to Express Ideas
Sometimes the Effort is the Goal
“Fixing the Model” for AI is Like Moving a Blanket
Don’t Give the Monkey the Gun!
How to Confront the Question “What is Our AI Strategy?”
Testing and The Software Development Lifecycle
Testing Problems are not Magic
Unit Tests and Washing Hands
Testing Accountability: Testing Owners
Throwing Things Over the Wall: Sometimes the Whole Thing is the Problem
Break the Schedule Into Smaller Chunks: Use Test Strategy to Guide Optimizing Coverage
Risk, Testing, and Deployment Patterns
Testing & SDLC Phases: Where the Bugs Exist for Each Phase
Testing Changes and CI/CD Pipeline
Short Iteration Test Strategy
Testing Does not Prevent Bugs: Prevention at Different Stages
What is the Problem with Pull Requests?
Different Ways for Testers and Developers to Work Together
Testing in General
Beware “I’m Doing Something” Bias
Punch and Judy: Tester and Developer Mindset Debate
Percentages are Often B.S. Use This Cool Metric to Find Out
Think Like a Developer, Think Like a Tester: Specification by Example
How Many Things is it? Testing Levels Simplified
Career Ladder Levels for Engineers
Automation Frameworks and Their Various Pieces
Testing v.s. Making Mindset: Infinity to Finite in Opposite Directions
Do You Need a Dedicated Tester?
Precision Versus Recall Testing
Why Business Don’t Invest in Testing
Automation is not Magic
First Time Testing is a Lot of Work - Why We Cover Regression Using Automated Checks
Testing Analysis
Testing is an Unsolved Problem
ICED MICE, a Unit Test Coverage Mnemonic
New Test Idea Heuristics
Use Test Environments to Cover Different Conditions
Unscripting the Test Procedure
Whole Scenario, Single Steps, or What?
Large Footprint Analysis - April Fools Post
Risk Accelerators - SPICED CADS
Boundary Value Analysis: More than Min Max
Testable Objects: Big Pictures and Little Pictures
Sometimes the Testing Methodology is a Code Smell
MEND and END the MOAN: Handy Test Heuristics
Switch Models to Get Ideas
Do You Know Summertime? Musical Improvisation as a Comparison to Exploratory Testing
What if it is Just a Dowsing Rod?
Risky Bunnies: A Game of Assessing Product Risk
Coverage Models: How They Vary
Templatized Case Explosion
Get Out the Red Ink Pen: API and Data Examples Describe Rich Test Problems
Fast to Read Test Idea Modeling Techniques
Effective Test Analysis is Specific and Context-Based
Testing Requirements Often Means Asking Critical Questions
Changing User Stories Using Different Reasoning Modes
Risk-Based Testing: Some Counter-Intuitive and Unpopular Heuristics Regarding Frequency
Mind the Gap. Bugs are in the Gap
Requirement Checks v.s. Exploratory Testing: They Find Different Things
Invaluable Testers
Deployments Frequency Compared to Train Departure Times
Change Requirements to Create More Test Ideas
If the Schema Allows It, Do It
Testing Just the User Stories is Weak Coverage
User Stories and Pairwise Testing
Inconsistent Results, Intermittent Failures, and Flake
Flaky Bugs are Time Bombs
Inconsistent Results Increase with Suite Size and Repetition
Is Your Response to Flake Flaky?
Variation is the Rule, not the Exception
Is This Bug From This Change? Use Repetition to Move “First Hit” Pain to a Better Time
Self-healing Automation Hides the Flake, and That Isn’t Good
Doing the Same Thing Over and Over Again is not the Definition of Insanity
Blog Posts
-
Vibe Coding As Specification Review — May 23, 2025
-
What Is The Vibe — May 3, 2025
-
Invaluable Testers Create Their Own Test Ideas — December 7, 2024
-
Testing An Ai Driven Test — December 3, 2024
-
Maximize Testing By Changing The Development Schedule — November 3, 2024
-
Digging Through Data Is Testing — October 26, 2024
-
Different Approaches To Test Cases — August 31, 2024
-
Following Cases From A Model Even When You Are Blocked — April 17, 2024
-
Think Like A Tester And Go Beyond The Code — April 5, 2024
-
Think Like A Tester And Use Simple Questions To Test Requirements — March 29, 2024
-
Think Like A Tester And Modify The User Stories — March 26, 2024
-
Think About Ai Systems Like A Tester — March 14, 2024
-
Ai And The Blanket Problem — March 11, 2024
-
Think Like A Tester And Admit You Dont Think Of Everyting — March 8, 2024
-
Think Like A Tester And Write End To End Tests — March 7, 2024
-
Testing While Coding And Isolate Business Logic — March 1, 2024
-
Think Like A Tester And Test For The Impossible — February 21, 2024
-
Testing The New User Scenario — February 19, 2024
-
Thinking Like A Tester By Keeping The User Story Going — February 16, 2024
-
Think Like A Tester But Act Like A Developer And Design For Testability — February 16, 2024
-
Think Like A Tester And Build Some Equality And Comparison Checking Into The App — February 13, 2024
-
Build The Tester Mindset By Asking Is This A Bug — February 10, 2024
-
Exercise Your Tester Mindset By Being A Real User And Comparing Against The Competition — February 8, 2024
-
Live Example Of Non Equivalent Testing Data — February 2, 2024
-
Developer As Tester Advantages I Never Had As A Tester — February 1, 2024
-
Flaky Product Design Choice Discovered Via Test Data Analysis — January 31, 2024
-
Generating Testing Ideas From Datastructures — January 30, 2024
-
Caught Myself In A Fragile Unit Test Bad Habit — January 29, 2024
-
In Which Ai Tried To Answer My Question And Was Just Wrong — January 28, 2024
-
Testing Large And Complex Transformations With Round Trips — January 24, 2024
-
Make Your Testing Documents About The Testing — January 23, 2024
-
Writing A Test Specification For A Performance Workload — January 22, 2024
-
Tester Mindset Does Not Give Up — January 20, 2024
-
Automating The Hardest Testing Problem I Ever Had — January 18, 2024
-
What To Do When You Need More Time To Test — January 16, 2024
-
Executing Non Happy Path Tests On A No Code Automation Service — January 15, 2024
-
The Ai Created Solution That I Had More Fun Testing Than Solving — January 14, 2024
-
Parenting The Freshman Year College Kid To Exercise Your Tester Brain — January 14, 2024
-
Diary Of A Developer Fixing Their Own Lazy Mistake — January 13, 2024
-
Testing Via Hypothesis — January 12, 2024
-
Security Vulnerability Investigation For Hypothetical Chatbot — January 8, 2024
-
Writing A Test Specification That Strays From Happy Path — January 4, 2024
-
Flake Is About Control — December 30, 2023
-
Winning With Flaky Automation — December 27, 2023
-
This Test Plan Needs Expert Fixing — December 24, 2023
-
The Wrong Error Message Is A Bug — December 23, 2023
-
Do Not Know What This Is Yet — December 21, 2023
-
Diary Testing An Ai Based Product — December 20, 2023
-
Ai Vs Human Coming Up With Tests — December 20, 2023
-
When The Product Needs To Change To Remove Flake — December 18, 2023
-
Diary Of A Developer Making Some Time For Test Lists — December 18, 2023
-
Developers As Testers And Boy Scouts Cleaning Up A Campsite — December 13, 2023
-
Security Testing And Fuzzies And Persistence — December 12, 2023
-
Ai Test Idea Generation Example — December 10, 2023
-
What To Do When The Test Results Are Wrong — December 9, 2023
-
Starvation Testing An Ai — December 7, 2023
-
Is Testing Bouncing — December 6, 2023
-
“I am so done” with the “tester mindset”. — December 3, 2023
-
I Know A Developer Can Switch To A Tester Mindset But I Do Not Know If They Will — December 2, 2023
-
Duplicate Bug Detection Is An Automation Game Changer — December 1, 2023
-
Parsing Your Way To A Tester Mindset — November 30, 2023
-
Tester Versus Developer Mindset As A Personal And Subjective Account — November 29, 2023
-
Leading With The Test Problem — November 29, 2023
-
Calculating Your Way To Your Tester Mindset — November 29, 2023
-
Whats In A Test — November 28, 2023
-
Find Your Tester Mindset Via The Formatfont Dialog — November 28, 2023
-
Chartering Your Way From Developer Mindset To Tester Mindset — November 28, 2023
-
Automation Refactoring As The App Changes — November 27, 2023
-
Integration Testing And Why Testers Are Not The Customer — November 22, 2023
-
Testing To Support Experiments — November 19, 2023
-
Test Data Generation With Ai Example That Worked Well — November 17, 2023
-
Winning At Testing With Madlibs — November 15, 2023
-
Fmea The Easy Way For Testing — November 7, 2023
-
Testing Beyond The Right Product Hypothesis — November 5, 2023
-
Brilliant Career Path For Testers — November 3, 2023
-
Graphing Test Cases — October 31, 2023
-
The Power Of Naming Your Test Ideas — October 27, 2023
-
Think of testing across sprints like Lego bricks — October 24, 2023
-
What did we build? — October 24, 2023
-
Generic Test Cases And The Great Esc Ape — September 23, 2023
-
Lessons Learned Using An Ai Army To Test Office — September 10, 2023
-
Why_is Rerun A Valid Test Strategy For Cicd — August 10, 2023
-
How Microsoft Integrated Early Observability Into Its Engineering Processes — June 12, 2023
-
Signals Based Software Testing — May 14, 2023
-
Titles Only Test Cases Were My Gateway Drug — January 23, 2023
-
What Happens In The Case When You Are Testing — April 11, 2022