# 测试处理器使用说明 这个目录包含了用于测试的处理器,可以模拟各种API请求场景,帮助开发和测试人员验证系统功能。 ## 处理器列表 ### 1. ProcessTestRequest - 基础测试处理器 - **功能**: 模拟正常的API请求处理 - **用途**: 测试基本的请求处理流程、参数验证、响应生成等 #### 请求参数 ```json { "test_param": "测试参数值", "delay": 1000 } ``` #### 响应示例 ```json { "message": "测试请求处理成功", "timestamp": "2024-01-01T12:00:00Z", "request_id": "test_20240101120000_000000000", "test_param": "测试参数值", "process_time_ms": 1005, "status": "success" } ``` ### 2. ProcessTestErrorRequest - 错误测试处理器 - **功能**: 模拟各种错误情况 - **用途**: 测试错误处理机制、异常响应等 #### 支持的错误类型 - `system_error`: 系统错误 - `datasource_error`: 数据源错误 - `not_found`: 资源未找到 - `invalid_param`: 参数无效 #### 请求示例 ```json { "test_param": "system_error" } ``` ### 3. ProcessTestTimeoutRequest - 超时测试处理器 - **功能**: 模拟长时间处理导致的超时 - **用途**: 测试超时处理、上下文取消等 ## 使用场景 ### 开发阶段 - 验证处理器框架是否正常工作 - 测试参数验证逻辑 - 验证错误处理机制 ### 测试阶段 - 性能测试(通过delay参数) - 超时测试 - 错误场景测试 - 集成测试 ### 调试阶段 - 快速验证API调用流程 - 测试中间件功能 - 验证日志记录 ## 注意事项 1. **延迟参数**: `delay` 参数最大值为5000毫秒(5秒),避免测试时等待时间过长 2. **上下文处理**: 所有处理器都正确处理上下文取消,支持超时控制 3. **错误处理**: 遵循项目的错误处理规范,使用预定义的错误类型 4. **参数验证**: 使用标准的参数验证机制,确保测试的真实性 ## 集成到路由 要将测试处理器集成到API路由中,需要在相应的路由配置中添加: ```go // 在路由配置中添加测试端点 router.POST("/api/test/basic", handlers.WrapProcessor(processors.ProcessTestRequest)) router.POST("/api/test/error", handlers.WrapProcessor(processors.ProcessTestErrorRequest)) router.POST("/api/test/timeout", handlers.WrapProcessor(processors.ProcessTestTimeoutRequest)) ``` ## 测试建议 1. **基础功能测试**: 先使用 `ProcessTestRequest` 验证基本流程 2. **错误场景测试**: 使用 `ProcessTestErrorRequest` 测试各种错误情况 3. **性能测试**: 通过调整 `delay` 参数测试不同响应时间 4. **超时测试**: 使用 `ProcessTestTimeoutRequest` 验证超时处理 5. **压力测试**: 并发调用测试处理器的稳定性