Integration Tests for Agent Pipelines
End-to-end tests against real services in isolated test environments.
What Are Integration Tests for Agents?
Unit tests check individual components in isolation. Integration tests check that multiple components work together correctly in a real or near-real environment.
For agents, this means running the full pipeline — LLM calls, tool execution, data storage — against real or sandboxed services.
End-to-End Test Structure
An end-to-end agent test sends a real query through the entire pipeline and validates the final result. Run these tests in a sandboxed environment — never against your production database or live user data.
import pytest
# Mark as integration test — skipped in fast unit test runs
@pytest.mark.integration
def test_research_agent_full_pipeline():
from myagent import ResearchAgent
agent = ResearchAgent(
openai_api_key='YOUR_TEST_KEY',
search_api_key='YOUR_TEST_KEY'
)
result = agent.run('What is the population of Tokyo?')
# Structural assertions — not exact string matching
assert isinstance(result, dict)
assert result['status'] == 'completed'
assert 'tokyo' in result['answer'].lower() or 'japan' in result['answer'].lower()
assert len(result['sources']) >= 1All lessons in this course
- Why Testing Agents Is Different
- Mocking LLM Calls in Tests
- Assertion-Based Agent Testing
- Integration Tests for Agent Pipelines