Thinking Out Loud on QA & AI

No surface-level takes. Real perspectives from 10+ years building automation systems that survive production.

Jun 25, 2026

Testcontainers: Your Integration Tests Still Aren't Isolated Enough

Most teams use Testcontainers as a glorified `docker run` wrapper for databases, patting themselves on the back for 'isolated' tests. You're wrong. True integration test isolation means controlling *all* dependencies, including custom services and network conditions, which Testcontainers, properly wielded, makes trivial.

7 min read
TestcontainersIntegration TestingDocker
Read
Jun 18, 2026

Testcontainers: Your Isolated Tests Are Still Lying To You

You think your isolated tests are robust because they use Testcontainers for a clean slate. You’re wrong. Most teams only scratch the surface, leaving critical integration points to flaky mocks or slow, shared environments, sabotaging true isolation and speed.

4 min read
Test AutomationJavaDocker
Read
Jun 15, 2026

Testcontainers: You're Still Running Your Tests Wrong

Most teams integrate Testcontainers to solve their flaky database tests, believing they've finally achieved true integration testing. They're wrong. If you're not ruthlessly isolating every test run, Testcontainers simply shifts your environmental flakiness from a shared staging environment to a shared Docker daemon, perpetuating the same fundamental problem with a shinier tool.

8 min read
TestcontainersIntegration TestingMicroservices
Read
Jun 11, 2026

Testcontainers is a Crutch, Not a Solution

Stop pretending Testcontainers is the silver bullet for reliable integration tests. It’s a symptom of a deeper problem: your application’s architecture is too tightly coupled to external dependencies. You’re treating the disease by masking the symptoms, not curing it.

8 min read
TestcontainersIntegration TestingArchitectural Debt
Read
Jun 8, 2026

Testcontainers: Your 'Component Tests' Are Lying To You

Most teams claim to do component testing, but they're really running fragile integration tests against shared environments. Testcontainers isn't just for databases; it's the fundamental primitive for building truly isolated, fast, and reliable component tests that actually catch regressions before production.

4 min read
TestcontainersComponent TestingSoftware Quality
Read
Jun 4, 2026

Your Testcontainers Strategy Is Probably Too Slow

Most teams use Testcontainers like a hammer, seeing every external dependency as a nail. This approach turns your 'fast' integration tests into sluggish, resource-hungry beasts that hide real bottlenecks, rather than exposing them.

8 min read
TestcontainersJavaTest Automation
Read
Jun 1, 2026

Testcontainers: Your Database Isn't What You Think

Most teams use Testcontainers to spin up production-like databases, but they're still testing against a ghost. The real problem isn't the container; it's the static, unopinionated data you load into it. You're not testing your application's resilience, you're testing its ability to handle a pristine, empty environment.

5 min read
TestcontainersData TestingProduction Bugs
Read
May 28, 2026

Testcontainers: Your Localhost DB Is Your Biggest Lie

Most teams blindly accept their localhost database as a 'convenient' development environment. They're wrong. This reliance on a persistent, often outdated, local state creates a dangerous illusion of stability, while Testcontainers forces you to confront production reality earlier and with far greater confidence.

8 min read
TestcontainersIntegration TestingMicroservices
Read
May 25, 2026

Your 'Isolated' Tests Still Share State. Testcontainers Can Fix It

Most teams use Testcontainers for databases and stop there, leaving their integration tests brittle, slow, and prone to hidden state. They're missing the true power of Docker: orchestrating an *entire isolated environment* for every test run. Stop half-measures and start truly containing your dependencies.

7 min read
TestcontainersIntegration TestingDocker
Read
May 21, 2026

Testcontainers Isn't For Tests; It's Your Architecture's Mirror

Most teams see Testcontainers as a convenient way to spin up databases for tests. They're missing the point entirely. Testcontainers isn't just a testing utility; it's a brutal, honest mirror reflecting the true state of your service dependencies and infrastructure assumptions, forcing you to build better, more resilient systems.

8 min read
TestcontainersMicroservicesDevOps
Read
May 18, 2026

AI-Generated Tests Are a Maintainability Trap. Here's How to Escape

Most teams using LLMs for test code generation are creating future tech debt, not accelerating quality. The promise of faster test creation is real, but without specific prompt engineering patterns, you're just trading manual effort for unmanageable, flaky code that will haunt your sprints.

7 min read
AI TestingPrompt EngineeringTest Automation
Read
May 15, 2026

AI Won't Fix Your Flaky Playwright Tests. It'll Expose Them

Most teams blindly believe AI will automatically stabilize their Playwright tests, but they're fundamentally misunderstanding the problem. AI isn't a silver bullet for test flakiness; it's a powerful diagnostic magnifying glass that exposes the underlying fragility of your application and test design.

7 min read
PlaywrightAI in TestingTest Automation
Read
May 15, 2026

LangChain's A Toy. LangGraph Builds AI Test Agents That Don't Lie

Most QA teams dabbling with LLMs for test automation are setting themselves up for failure by reaching for LangChain's simplistic chains. If you're not explicitly modeling your AI test agent's state and transitions with LangGraph, you're building non-deterministic test suites that will eventually betray your release confidence.

10 min read
AI TestingLangGraphTest Automation
Read
May 15, 2026

Your Feature Flags Are Lying To Your Tests

Most teams use feature flags as deployment levers or A/B testing tools, completely missing their most impactful role: a powerful, dynamic testing primitive. This oversight leaves critical integration bugs undiscovered until late stages and cripples your ability to truly shift quality left.

8 min read
Feature FlagsTest AutomationCI/CD
Read
May 14, 2026

GitHub Actions Gates: Stop Shipping Broken Code NOW

Most quality gates in CI/CD are performative theater, blocking nothing of consequence. They don't stop bad code from reaching production; they merely add a few minutes of 'confidence' before it does. True quality gates require a fundamental shift in how we define and enforce them, moving beyond simple pass/fail checks to robust, context-aware assertions.

6 min read
CI/CDGitHub ActionsQuality Gates
Read
May 11, 2026

Your AI Tests Pass. Your Bugs Don't Care

Most teams buying into AI test generation are falling for the biggest illusion in QA since 'shift left.' These tools excel at creating tests that pass, giving a false sense of security, but fundamentally fail to uncover the critical, edge-case bugs that actually impact users.

8 min read
AI TestingTest AutomationQuality Engineering
Read
May 10, 2026

Staging Is A Lie: How To Build Trustworthy Test Environments

Most teams waste countless hours debugging production issues that 'never happened in staging' because their staging environments are fundamentally flawed. You're not alone; this is a systemic problem, and it's time to admit that your carefully maintained staging environment is likely a sophisticated lie. True confidence comes from environments that mirror production's chaos, not its sanitized facade.

8 min read
Environment TestingTest StrategyDevOps
Read
May 10, 2026

Your GitHub Actions Quality Gates Are Broken. Here's How To Fix Them

Most engineering teams believe their CI/CD pipeline prevents bad code from reaching production, but their 'quality gates' are often performative reports, not true blockers. The dirty secret is that unless a failure explicitly *halts* the deployment process, you're just logging problems, not solving them.

7 min read
Quality EngineeringGitHub ActionsCI/CD
Read
May 8, 2026

GitOps + Quality Gates: Your Release Confidence Multiplier

Stop chasing release bugs; start chasing release confidence. GitOps, when coupled with intelligent quality gates, transforms your CI/CD pipeline from a potential failure point into your most reliable release assurance mechanism.

8 min read
GitOpsCI/CDQuality Gates
Read
May 8, 2026

Platform Engineering: QA's Untapped Frontier for DX

Most people assume Platform Engineering is solely about making developers' lives easier, optimizing their coding and deployment workflows. But for QA professionals, platform engineering is actually about *elevating quality upstream*, transforming us from downstream gatekeepers into architects of frictionless, reliable developer experiences.

8 min read
Platform EngineeringDeveloper ExperienceQA Strategy
Read
May 8, 2026

Your Staging Environment Is A Lie. Here's How We Made Ours Real.

Most teams operate under the dangerous illusion that their staging environment is a reliable pre-production replica, when in reality, it’s a Frankenstein's monster of outdated data, mismatched configurations, and synthetic traffic. True release confidence isn't about *having* a staging environment, but about ensuring it's a statistically valid, dynamically refreshed microcosm of production, reflecting real user behavior and system loads.

9 min read
#StagingEnvironments#ReleaseConfidence#TestStrategy
Read
May 7, 2026

Your Tests Are Blind. OpenTelemetry Can Fix That.

Most test pipelines are flying blind — they check pass/fail but ignore what the system was actually doing during the test. Wiring OpenTelemetry distributed traces directly into your quality gates turns testing from a binary verdict into a signal-driven feedback loop. Here's how I do it in practice.

6 min read
OpenTelemetryTest AutomationCI/CD
Read
May 3, 2026

Feature Flags Are Now QA's Production Accountability Layer

OpenAI just paid $1.1 billion for a feature flag company. That's not a deployment story — it's a quality story. Here's why progressive delivery is quietly absorbing what we used to call QA, and what that means for anyone still measuring success by pass rates.

6 min read
Feature FlagsProgressive DeliveryQA Strategy
Read
Featured
Mar 15, 2025

The Future of AI in Test Automation

AI isn't replacing QA engineers — it's replacing the repetitive decisions that slow them down. Here's what intelligent automation actually looks like in 2025.

4 min read
AIAutomationFuture of QA
Read
Feb 20, 2025

Why Most Automation Frameworks Fail (And What To Do Instead)

90% of automation projects fail within 18 months. Not because the tools are bad — because the architecture decisions are wrong from day one.

4 min read
ArchitectureQA StrategyAutomation
Read
Jan 10, 2025

Self-Healing Tests: Hype vs Reality

Everyone's talking about self-healing tests. Few have shipped them to production. Here's what actually works, what doesn't, and what it takes to do it right.

4 min read
Self-HealingAIPlaywright
Read
Dec 5, 2024

How to Build Intelligent QA Systems: A Practitioner's Guide

Intelligent QA isn't a platform you buy. It's an architecture you build — incrementally, deliberately, and with clear success criteria at each layer.

5 min read
ArchitectureQA StrategyAI
Read
Oct 22, 2024

From Manual Tester to QA Architect: The Career Path Nobody Tells You About

The jump from tester to architect isn't a title change — it's a complete rewiring of how you see software, systems, and business risk.

5 min read
CareerQA StrategyLeadership
Read

Get posts like this in your inbox

No fluff. Sharp takes on QA, AI, and engineering — once a week.