Overview
Express Zod API provides utilities for testing endpoints and middleware without starting a server.testEndpoint()
Tests an endpoint by mocking request/response objects.Parameters
Endpoint
required
The endpoint to test
RequestProps
Mock request properties
ResponseOptions
Mock response options
Partial<CommonConfig>
Override config for this test
LoggerOverrides
Custom logger for testing
Returns
MockResponse
Mocked response object with assertion methods:
_getStatusCode(): Get HTTP status code_getJSONData(): Get parsed JSON response_getHeaders(): Get response headers (lowercase)_isJSON(): Check if response is JSON_isEndCalled(): Check if response ended_getRedirectUrl(): Get redirect location
MockLogger
Mocked logger with logs:
_getLogs(): Returns{ debug: [], info: [], warn: [], error: [] }
Examples
Testing GET Endpoint
Testing POST Endpoint
Testing File Upload
testMiddleware()
Tests middleware in isolation.Parameters
Middleware
required
The middleware to test
RequestProps
Mock request properties
ResponseOptions
Mock response options
Context
Context from previous middleware
Partial<CommonConfig>
Override config for this test
LoggerOverrides
Custom logger for testing
Returns
Context
Context object returned by middleware
MockResponse
Mocked response object
MockLogger
Mocked logger
Examples
Testing Auth Middleware
Testing Middleware Chain
Integration with Test Frameworks
Vitest
Jest
See Also
Testing Guide
Complete testing guide
Endpoint
Create endpoints
Middleware
Create middleware