14.1The Tables Have Turned
Every previous chapter in this module used agents to test conventional software. This chapter inverts the relationship: the system under test is itself an agent. As of July 2026, this is not a niche skill -- mid-2026 QA job postings explicitly list "testing MCP / A2A flows" as a named competency, alongside LLM eval design. If your company ships an agent (a support bot with tools, an internal coding agent, an agentic checkout assistant), someone has to answer the question: how do we know it works? That someone is you.
Agentic systems break the assumptions that classical test strategy rests on:
| Classical assumption | Agentic reality |
|---|---|
| Same input → same output | Same input → a distribution of outputs |
| Behavior is defined by code you can read | Behavior emerges from model + prompt + tools + state |
| Interfaces are versioned APIs | Interfaces are tool schemas and natural-language contracts |
| A test passes or fails | A test passes at some rate |
| The SUT cannot attack the test harness | Tool outputs can carry prompt injection into the agent |
The good news: the discipline you already have transfers. Contract testing, record/replay, sandboxing, statistical thinking about flakiness, and negative testing all apply -- they just point at new surfaces.