# SemanticTest ## Docs - [Custom Blocks](https://docs.semantictest.dev/advanced/custom-blocks.md): Extend SemanticTest with your own custom blocks - [Debugging](https://docs.semantictest.dev/advanced/debugging.md): Debug your tests and troubleshoot issues - [Environment Variables](https://docs.semantictest.dev/advanced/environment-variables.md): Manage configuration with environment variables - [Programmatic Usage](https://docs.semantictest.dev/advanced/programmatic-usage.md): Use SemanticTest in your JavaScript/TypeScript code - [Test Suites](https://docs.semantictest.dev/advanced/test-suites.md): Organize and run multiple tests efficiently - [Multi-Turn Conversations](https://docs.semantictest.dev/ai-testing/multi-turn-conversations.md): Test conversational AI flows with context and memory - [Testing AI Systems](https://docs.semantictest.dev/ai-testing/overview.md): Learn how to test non-deterministic AI systems effectively - [Semantic Validation](https://docs.semantictest.dev/ai-testing/semantic-validation.md): Use AI to evaluate AI responses with LLMJudge - [Testing Streaming Responses](https://docs.semantictest.dev/ai-testing/streaming-responses.md): Parse and test Server-Sent Events (SSE) streams from AI APIs - [Testing Tool Calls](https://docs.semantictest.dev/ai-testing/tool-calls.md): Validate AI tool/function calling with ValidateTools - [HttpRequest](https://docs.semantictest.dev/blocks/http-request.md): Make HTTP requests to APIs and web services - [JsonParser](https://docs.semantictest.dev/blocks/json-parser.md): Parse JSON strings into JavaScript objects - [LLMJudge](https://docs.semantictest.dev/blocks/llm-judge.md): Use AI to evaluate responses semantically - [Loop](https://docs.semantictest.dev/blocks/loop.md): Repeat blocks in your pipeline conditionally - [MockData](https://docs.semantictest.dev/blocks/mock-data.md): Provide mock data for testing without external dependencies - [Blocks Overview](https://docs.semantictest.dev/blocks/overview.md): All available building blocks for your test pipelines - [StreamParser](https://docs.semantictest.dev/blocks/stream-parser.md): Parse Server-Sent Events (SSE) streaming responses from AI APIs - [ValidateContent](https://docs.semantictest.dev/blocks/validate-content.md): Validate text content against rules and patterns - [ValidateTools](https://docs.semantictest.dev/blocks/validate-tools.md): Validate AI tool/function calls - [Assertions](https://docs.semantictest.dev/concepts/assertions.md): Validate your test results with powerful operators - [Data Flow](https://docs.semantictest.dev/concepts/data-flow.md): How data moves through your test pipelines - [Input Formats](https://docs.semantictest.dev/concepts/input-formats.md): Three ways to pass data to blocks - [Output Formats](https://docs.semantictest.dev/concepts/output-formats.md): Three ways blocks can output data - [Pipelines](https://docs.semantictest.dev/concepts/pipelines.md): Understanding the pipeline architecture - [AI Chat Test](https://docs.semantictest.dev/examples/ai-chat-test.md): Test AI chat responses with semantic validation - [Basic API Test](https://docs.semantictest.dev/examples/basic-api-test.md): Complete example of testing a REST API - [Calendar Agent](https://docs.semantictest.dev/examples/calendar-agent.md): Complete example of testing an AI calendar agent - [Error Handling](https://docs.semantictest.dev/examples/error-handling.md): Patterns for handling errors and failures gracefully - [Installation](https://docs.semantictest.dev/installation.md): Install SemanticTest in your project - [Introduction](https://docs.semantictest.dev/introduction.md): A composable, pipeline-based testing framework for AI systems and APIs - [Quickstart](https://docs.semantictest.dev/quickstart.md): Get started with SemanticTest in 30 seconds ## Optional - [npm Package](https://www.npmjs.com/package/@blade47/semantic-test) - [GitHub](https://github.com/blade47/semantic-test)