Category: Uncategorized

AI Experiment #4: The Test Automation Compiler

October 27, 2025
Can you treat test cases like source code that compiles into automation? I wondered if this might work… so I tried it. The Question How far can I take building a fully “prompt driven” test automation system? In previous experiments, I’ve been exploring different aspects of AI-driven test automation: Experiment #1: Creating test cases from screen recordings with FFMPEG Experiment #2: Running test cases directly with Chrome DevTools MCP Experiment #3: The “run twice” pattern – agentic discovery then deterministic YAML This experiment brings it all together into a systematic approach I’m calling The Test Automation Compiler. The core idea: Treat markdown test cases as source code that gets compiled into executable automation through a defined process – just like...
Read more...

AI Experiment #3: When Claude Code Builds a Framework You Didn’t Ask For

October 24, 2025
Can you transform unreliable agentic tests into deterministic, repeatable tests using a “run twice” pattern? I wondered if this works… so I tried it. The Question Why did Claude Code suddenly start building a test automation framework I didn’t ask for? Towards the end of Experiment #2, things went sideways. I asked Claude Code to create a slash command for test automation. Instead, it started generating commands for converting tests to YAML, creating action libraries, building test runners… way beyond what I’d asked for. Then I realized: I’d forgotten about a markdown document in my project folder. A document about “deterministic test automation” that I’d been exploring with Claude Code in a previous session. When I said “read all the...
Read more...

AI Experiment #2: Test Case to Automated Execution with Chrome DevTools MCP

October 15, 2025
Can you actually go straight from test case doc to automated execution? Thought I’d give this a go and see what kind of results I came up with. The Question “Can I just give Claude Code my test case document, connect the Chrome DevTools MCP, and have it run the tests? Like, actually run them in a real browser, without writing any test code or setting up a framework?” Potential scenarios for this include… when you have documented test cases but no automation yet – could this give you instant automated execution? Maybe you could use this to figure out how to interact with difficult applications before building proper test frameworks. Anyway, no point speculating about how to use this...
Read more...

AI Experiment #1: Recording Videos and Converting Them to Test Cases

Can you actually record yourself testing and get test case documentation back automatically? I wondered if this works… so I tried it. The Question I hate writing test case documentation, especially after I’ve already done the testing manually. So I wondered… what if I just record a video of myself testing and let Claude Code write the test cases? Could this actually work? I’m kind of thinking of two potential scenarios if this works. First, when you have something to test but nobody has bothered to write a decent spec – you could record yourself exploring the application and generate test cases from that. Second, maybe you have a wireframe of the application (before it’s built) and you can record...
Read more...

An Intro to Agentic Testing : Overview and the PRP System

August 30, 2025
Contents : Module 1 Lesson 1 This Module Module 1 – Building an Automation Framework with the PRP System Lesson 1 : Overview and the PRP System (this document) Lesson 2 : Pre-requisites and Setup Lesson 3 : Step-by-step Build and Execute Lesson 4 : Documentation and Debugging Bonus Lesson : Getting Started with Claude Code New Modules Comming Soon Module 2: Developing your PRP Process to Add Tests Module 3: Using MCPs to build a better Automation Framework Module 4: PTP System for Test Case Creation Module 5: Executing and Running Tests with PTP Module 6: Agentic Test Maintenance Introduction The high-level architecture we’re working with is based around three core components: PRD, PRP, and the PTP. PRD :...
Read more...

The Jira Burndown Chart

October 8, 2024
In this guide, we delve deep into the Burndown chart. An essential tool in JIRA for tracking “estimated work remaining” versus “work completed”. This chart helps you asses whether your team is on track to meet sprint goals. Primarily, Burndown charts apply to Scrum boards, although you can configure a Kanban project to include a Scrum board along with a Burndown chart (will explore this oddity at the end). We've broken this guide down into the following sections: – An Introduction to Burndown Charts – Configuration: items that influence how your chart displays data Status Categories Board Configuration Field Context Project Types – The Different Tracking Methods Story Points Original Time Estimate Estimated Time Remaining Issue Count Introduction to Burndown...
Read more...

How To Handle Errors And Exceptions In Selenium C#

January 29, 2024
In any test automation project you're going to run into errors. They might be errors in your programming. They might also be errors raised as your scripts try to interact with the application you're testing. Either way when an error occurs during the execution of your automation code it's considered an 'exception'. That is, your code can't continue to be executed as you intended; *an exception to the rules you've defined in your code has to be handled.* In this article we look at how C# deals with Exceptions and we look at the different types of exceptions you're likely to encounter with Selenium in C#. Contents C# Exception Handling The C# CLR Exception Object Exception Handling in C# Throwing...
Read more...

Python Basics for Test Automation Engineers

May 29, 2022
Like it or not the most effective way to build automated tests is with code. Yes drag and drop, icon based, user friendly IDE's can be productive. Just that they'll never be as effective or productive as developing automated tests in code. This is why languages like Python are critical to a lot of test automation projects. So in a series of courses that will cover Python, Java Script and C# we start by taking you through the basics of Python. In a series of 14 modules You'll learn about Python …. Module 1 – Operations Module 2 – Variables Module 3 – Operators Module 4 – Lists Module 5 – Loops Module 6 – Functions Module 7 – Modules...
Read more...

How To …. Create a Continuous Testing Environment with the TestComplete REST Api and Virtual Machines

February 21, 2022
Create a Continuous Testing Environment with the TestComplete REST Api and Virtual Machines Stability and productivity are everything with automated testing. If you're going to be productive with TestComplete you must have a way to test and run your automated tests outside of your development machine. As your tests grow you cannot afford to waste time tying up your development machine as you run your automated tests. It’s crucial that you have separate environments where you can execute tests independently. We’re going to walk you through a simple'ish setup where you develop on one machine and run on a separate virtual machine using TestExecute. Execute a script, your tests run on a VM, results available on your development machine. What...
Read more...

Microsoft Azure DevOps Test Management Review

November 30, 2021
Introduction The Microsoft Azure DevOps Test Management component offers the possibility of a fully integrated development and test capability for QA and Development teams. It gives agile teams the capability of collaborating in one tool for all the different disciplines. Again, in this review of the test management component, we’ll be focusing on 7 of the most prominent features and assessing Azure DevOps against them. These features are: Assignment Version Control Parameterisation Libraries Results Aggregation Retesting Configurations and Releases Assignment When implementing a process or selecting a test management tool, you’ll always need to assign a test to a tester at some point. Question is do you need to assign at the step, case or cycle level. Do you need to allocate...
Read more...