@dawn-ai/testing
v0.8.26
Published
Deterministic harnesses, fixtures, and matchers for testing Dawn agent applications.
Maintainers
Readme
@dawn-ai/testing
Supported harnesses, fixtures, matchers, deterministic embedders, and runtime helpers for testing Dawn applications.
Use this when: You want to test Dawn agent behavior without making live model calls.
Install
pnpm add -D @dawn-ai/testing vitestExample
import { createAgentHarness, expectFinalMessage, script } from "@dawn-ai/testing"
await using harness = await createAgentHarness({
appRoot: process.cwd(),
route: "/support#agent",
})
const result = await harness.run({
input: "Say hello",
fixtures: script().user("Say hello").replies("Hello!"),
})
expectFinalMessage(result).toContain("Hello")Runtime and stability
@dawn-ai/testing is a supported node-only testing surface. createAgentHarness() temporarily changes process-wide model environment variables and runtime caches; await close() and do not run concurrent harnesses in one process. Fixture replay is deterministic and CI-safe; live recording requires model credentials.
Related
- Testing API reference — exact harness and lifecycle contracts.
- Agent Test Harness — end-to-end agent testing.
- Fixtures and Recording — deterministic replay and optional live recording.
@dawn-ai/evals— repeatable datasets, scorers, and release gates.
Maturity and support
Dawn is pre-1.0, and its public surface can change. All publishable Dawn packages release together as a fixed group; review the @dawn-ai/testing changelog and upgrading guide before upgrading. For support, use GitHub Discussions; report defects in GitHub Issues.
License
MIT. See the repository license.
