compliance/log_dms.txt
2025-07-11 17:56:56 +08:00

5352 lines
1.1 MiB
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

2025-07-11 17:53:11,342 - __main__ - DEBUG - 已启用详细日志模式
2025-07-11 17:53:11,342 - __main__ - INFO - 测试报告将保存到: /Users/zpc01/workspace/zzlh/compliance/test_reports/2025-07-11_17-53-11
2025-07-11 17:53:11,342 - ddms_compliance_suite.test_case_registry - INFO - Discovering custom test cases from: ./custom_testcases
2025-07-11 17:53:11,342 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: security_checks 从 ./custom_testcases/security_checks.py
2025-07-11 17:53:11,342 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-SECURITY-002' (敏感字段加密检查) 来自类 'EncryptedFieldsCheck' (路径: ./custom_testcases/security_checks.py)
2025-07-11 17:53:11,343 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: basic_checks 从 ./custom_testcases/basic_checks.py
2025-07-11 17:53:11,343 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-STATUS-001' (基本状态码 200 检查) 来自类 'StatusCode200Check' (路径: ./custom_testcases/basic_checks.py)
2025-07-11 17:53:11,343 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_llm_compliance_check 从 ./custom_testcases/llm/tc_llm_compliance_check.py
2025-07-11 17:53:11,343 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) 来自类 'LLMComplianceCheckTestCase' (路径: ./custom_testcases/llm/tc_llm_compliance_check.py)
2025-07-11 17:53:11,343 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: required_headers_check 从 ./custom_testcases/setup_checks/required_headers_check.py
2025-07-11 17:53:11,343 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-HEADER-001' (必需请求头Schema验证) 来自类 'RequiredHeadersSchemaCheck' (路径: ./custom_testcases/setup_checks/required_headers_check.py)
2025-07-11 17:53:11,344 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_response_schema_format_001 从 ./custom_testcases/井筒/DMS增加核心存储服务API/tc_response_schema_format_001.py
2025-07-11 17:53:11,344 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) 来自类 'ResponseSchemaFormatCheck' (路径: ./custom_testcases/井筒/DMS增加核心存储服务API/tc_response_schema_format_001.py)
2025-07-11 17:53:11,344 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_url_version_check_001 从 ./custom_testcases/井筒/DMS增加核心存储服务API/tc_url_version_check_001.py
2025-07-11 17:53:11,344 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) 来自类 'URLVersionCheckCase' (路径: ./custom_testcases/井筒/DMS增加核心存储服务API/tc_url_version_check_001.py)
2025-07-11 17:53:11,344 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_pagination_params_check 从 ./custom_testcases/井筒/开发指南-后端/tc_pagination_params_check.py
2025-07-11 17:53:11,344 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-DMS-PAGINATION-001' (分页参数检查) 来自类 'PaginationParamsCheckTestCase' (路径: ./custom_testcases/井筒/开发指南-后端/tc_pagination_params_check.py)
2025-07-11 17:53:11,344 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_002 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_002.py
2025-07-11 17:53:11,344 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-002' (资源路径名词检查) 来自类 'ResourcePathNounCheckTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_002.py)
2025-07-11 17:53:11,345 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_003 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_003.py
2025-07-11 17:53:11,345 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-003' (时间字段ISO 8601格式检查) 来自类 'TimeFormatCheckTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_003.py)
2025-07-11 17:53:11,345 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_combined_001 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_combined_001.py
2025-07-11 17:53:11,345 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-001' (核心命名与结构规范检查) 来自类 'CoreNamingStructureTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_combined_001.py)
2025-07-11 17:53:11,345 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_004 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_004.py
2025-07-11 17:53:11,345 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-004' (资源集合复数命名检查) 来自类 'ResourceCollectionPluralCheckTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_004.py)
2025-07-11 17:53:11,346 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: https_mandatory_case 从 ./custom_testcases/compliance_catalog/security/https_mandatory_case.py
2025-07-11 17:53:11,346 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-SECURITY-001' (HTTPS 协议强制性检查) 来自类 'HTTPSMandatoryCase' (路径: ./custom_testcases/compliance_catalog/security/https_mandatory_case.py)
2025-07-11 17:53:11,346 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: url_llm_checks 从 ./custom_testcases/compliance_catalog/normative_spec/url_llm_checks.py
2025-07-11 17:53:11,346 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: http_method_usage_case 从 ./custom_testcases/compliance_catalog/normative_spec/http_method_usage_case.py
2025-07-11 17:53:11,346 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: missing_required_field_query_case 从 ./custom_testcases/compliance_catalog/error_handling/missing_required_field_query_case.py
2025-07-11 17:53:11,346 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4003-QUERY' (缺失必填查询参数检查) 来自类 'MissingRequiredFieldQueryCase' (路径: ./custom_testcases/compliance_catalog/error_handling/missing_required_field_query_case.py)
2025-07-11 17:53:11,347 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: invalid_enum_value_case 从 ./custom_testcases/compliance_catalog/error_handling/invalid_enum_value_case.py
2025-07-11 17:53:11,347 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4006' (非法枚举值检查) 来自类 'InvalidEnumValueCase' (路径: ./custom_testcases/compliance_catalog/error_handling/invalid_enum_value_case.py)
2025-07-11 17:53:11,347 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: type_mismatch_body_case 从 ./custom_testcases/compliance_catalog/error_handling/type_mismatch_body_case.py
2025-07-11 17:53:11,347 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4001-BODY' (请求体字段类型不匹配检查) 来自类 'TypeMismatchBodyCase' (路径: ./custom_testcases/compliance_catalog/error_handling/type_mismatch_body_case.py)
2025-07-11 17:53:11,347 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: missing_required_field_body_case 从 ./custom_testcases/compliance_catalog/error_handling/missing_required_field_body_case.py
2025-07-11 17:53:11,347 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4003-BODY' (缺失必填请求体字段检查) 来自类 'MissingRequiredFieldBodyCase' (路径: ./custom_testcases/compliance_catalog/error_handling/missing_required_field_body_case.py)
2025-07-11 17:53:11,347 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: type_mismatch_query_param_case 从 ./custom_testcases/compliance_catalog/error_handling/type_mismatch_query_param_case.py
2025-07-11 17:53:11,347 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4001-QUERY' (查询参数类型不匹配检查) 来自类 'TypeMismatchQueryParamCase' (路径: ./custom_testcases/compliance_catalog/error_handling/type_mismatch_query_param_case.py)
2025-07-11 17:53:11,348 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: number_out_of_range_case 从 ./custom_testcases/compliance_catalog/error_handling/number_out_of_range_case.py
2025-07-11 17:53:11,348 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4002' (数值参数越界检查) 来自类 'NumberOutOfRangeCase' (路径: ./custom_testcases/compliance_catalog/error_handling/number_out_of_range_case.py)
2025-07-11 17:53:11,348 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: schema_validation_case 从 ./custom_testcases/compliance_catalog/core_functionality/schema_validation_case.py
2025-07-11 17:53:11,348 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-CORE-FUNC-001' (返回体JSON Schema验证) 来自类 'ResponseSchemaValidationCase' (路径: ./custom_testcases/compliance_catalog/core_functionality/schema_validation_case.py)
2025-07-11 17:53:11,348 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: flexible_schema_validation_case 从 ./custom_testcases/compliance_catalog/core_functionality/flexible_schema_validation_case.py
2025-07-11 17:53:11,348 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-CORE-FUNC-002' (灵活的返回体JSON Schema验证) 来自类 'FlexibleSchemaValidationCase' (路径: ./custom_testcases/compliance_catalog/core_functionality/flexible_schema_validation_case.py)
2025-07-11 17:53:11,348 - ddms_compliance_suite.test_case_registry - INFO - 已根据 execution_order (主要) 和类名 (次要) 对 20 个测试用例类进行了排序。
2025-07-11 17:53:11,348 - ddms_compliance_suite.test_case_registry - INFO - 测试用例发现完成。总共注册了 20 个独特的测试用例 (基于ID)。发现并排序了 20 个测试用例类。
2025-07-11 17:53:11,348 - ddms_compliance_suite.llm_utils.llm_service - INFO - LLMService initialized for model 'qwen-plus' at https://dashscope.aliyuncs.com/compatible-mode/v1
2025-07-11 17:53:11,348 - ddms_compliance_suite.test_orchestrator - INFO - LLMService initialized with model: qwen-plus.
2025-07-11 17:53:11,348 - ddms_compliance_suite.test_orchestrator - INFO - LLMService is initialized, but no LLM generation flags (--use-llm-for-*) are enabled.
2025-07-11 17:53:11,348 - ddms_compliance_suite.stage_registry - INFO - 开始从目录发现测试阶段: custom_stages
2025-07-11 17:53:11,349 - ddms_compliance_suite.stage_registry - DEBUG - 成功加载模块: ddms_compliance_suite.stages.keyword_driven_crud_stage 从 custom_stages/keyword_driven_crud_stage.py
2025-07-11 17:53:11,349 - ddms_compliance_suite.stage_registry - DEBUG - 成功加载模块: ddms_compliance_suite.stages.dms_crud_scenario_stage 从 custom_stages/dms_crud_scenario_stage.py
2025-07-11 17:53:11,349 - ddms_compliance_suite.stage_registry - INFO - 成功注册测试阶段: dms_crud_scenario_stage (来自 ddms_compliance_suite.stages.dms_crud_scenario_stage.DmsCrudScenarioStage)
2025-07-11 17:53:11,349 - ddms_compliance_suite.stage_registry - INFO - 测试阶段发现完成。共加载 1 个阶段。发现 0 个错误。
2025-07-11 17:53:11,349 - ddms_compliance_suite.test_orchestrator - INFO - StageRegistry initialized. Loaded 1 stages.
2025-07-11 17:53:11,349 - ddms_compliance_suite.test_orchestrator - INFO - Orchestrator output directory set to: /Users/zpc01/workspace/zzlh/compliance/test_reports/2025-07-11_17-53-11
2025-07-11 17:53:11,349 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,349 - __main__ - INFO - 从DMS服务动态发现运行测试: ./assets/doc/dms/domain.json
2025-07-11 17:53:11,349 - ddms_compliance_suite.test_orchestrator - INFO - TestSummary initialized.
2025-07-11 17:53:11,349 - ddms_compliance_suite.test_orchestrator - INFO - 从DMS动态服务启动测试...
2025-07-11 17:53:11,349 - ddms_compliance_suite.input_parser.parser - INFO - Starting DMS spec parsing. Base URL: http://127.0.0.1:5001, Domain Map: ./assets/doc/dms/domain.json
2025-07-11 17:53:11,350 - ddms_compliance_suite.input_parser.parser - INFO - Fetching API list from: http://127.0.0.1:5001/api/schema/manage/schema
2025-07-11 17:53:11,358 - ddms_compliance_suite.input_parser.parser - INFO - Fetching model for 'lujing_test' from: http://127.0.0.1:5001/api/schema/manage/schema/lujing_test.1.0.0
2025-07-11 17:53:11,360 - ddms_compliance_suite.input_parser.parser - INFO - Fetching model for 'wb_dr_pro_daily_report' from: http://127.0.0.1:5001/api/schema/manage/schema/wb_dr_pro_daily_report.1.0.0
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行API测试阶段 (Stages)...
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - INFO - 发现了 1 个已定义的测试阶段: ['dms_crud_scenario_stage']
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - WARNING - 未知的解析规范类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>。将阶段应用于整个规范 (api_group_name=None).
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - INFO - 将针对 1 个API分组评估测试阶段: [None]
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - INFO - 处理测试阶段定义: ID='dms_crud_scenario_stage', Name='DMS Full CRUD Scenario'
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备阶段 'dms_crud_scenario_stage' 的上下文针对API分组: 'Global'
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - DEBUG - For Global context, selected 10 endpoint objects.
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - DEBUG - 为阶段 'dms_crud_scenario_stage' 和分组 'Global' 实例化。API对象数量: 10. 元数据: {'name': 'Global (所有API)', 'description': '适用于规范中的所有API'}
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - DEBUG - 检查阶段 'dms_crud_scenario_stage' 是否适用于API分组 'Global'...
2025-07-11 17:53:11,361 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Found complete CRUD scenario for DMS resource: 'lujing_test'
2025-07-11 17:53:11,361 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Found complete CRUD scenario for DMS resource: 'wb_dr_pro_daily_report'
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'dms_crud_scenario_stage' 适用于API分组 'Global'。开始执行...
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试阶段: ID='dms_crud_scenario_stage', Name='DMS Full CRUD Scenario', API分组='Global'
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - DEBUG - 调用 stage 'dms_crud_scenario_stage' 的 before_stage 钩子。初始上下文: {}
2025-07-11 17:53:11,361 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Setting up before_stage for scenario: ['create', 'list', 'read', 'update', 'delete']
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 开始执行.
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 调用 before_step 钩子. 上下文: {'pk_name': 'description', 'pk_value': 'b35c0305-7a09-40e3-a657-2abf4edb3b5f', 'current_payload': {'description': 'test-entry-from-scenario'}, 'update_payload': {'description': 'updated-test-entry-from-scenario'}, 'scenario_endpoints': {'create': <DMSEndpoint Method:POST Path:/api/dms/wb_ml/v1/lujing_test Title:'Create lujing_test' Mode:standalone>, 'list': <DMSEndpoint Method:POST Path:/api/dms/wb_ml/v1/lujing_test/1.0.0 Title:'List lujing_test' Mode:scenario_only>, 'read': <DMSEndpoint Method:GET Path:/api/dms/wb_ml/v1/lujing_test/1.0.0/{id} Title:'Read lujing_test' Mode:scenario_only>, 'update': <DMSEndpoint Method:PUT Path:/api/dms/wb_ml/v1/lujing_test Title:'Update lujing_test' Mode:scenario_only>, 'delete': <DMSEndpoint Method:DELETE Path:/api/dms/wb_ml/v1/lujing_test Title:'Delete lujing_test' Mode:scenario_only>}}
2025-07-11 17:53:11,361 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - DEBUG - Executing before_step for step 'Step 1: Create Resource' in stage 'dms_crud_scenario_stage'
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 查找端点定义. Key='CREATE', Group='None'
2025-07-11 17:53:11,361 - ddms_compliance_suite.test_orchestrator - ERROR - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 步骤执行期间发生意外错误: name 'BaseEndpoint' is not defined
Traceback (most recent call last):
File "/Users/zpc01/workspace/zzlh/compliance/ddms_compliance_suite/test_orchestrator.py", line 2181, in execute_single_stage
if isinstance(api_op_spec, BaseEndpoint):
^^^^^^^^^^^^
NameError: name 'BaseEndpoint' is not defined. Did you mean: 'YAPIEndpoint'?
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 调用 after_step 钩子.
2025-07-11 17:53:11,363 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - DEBUG - Executing after_step for step 'Step 1: Create Resource' in stage 'dms_crud_scenario_stage'
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 执行完毕. 状态: 执行错误, 耗时: 0.00s
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_orchestrator - WARNING - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 状态为 执行错误 且 continue_on_failure=False. 中止测试阶段 'dms_crud_scenario_stage'.
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_orchestrator - DEBUG - 调用 stage 'dms_crud_scenario_stage' 的 after_stage 钩子. 当前阶段结果状态: 执行错误
2025-07-11 17:53:11,363 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Finished scenario 1/2 for this group.
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'dms_crud_scenario_stage' (API分组: 'Global') 执行完毕. 最终状态: 失败, 耗时: 0.00s
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_orchestrator - INFO - API Test Stage execution processed. Considered 1 (stage_definition x api_group) combinations.
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,363 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/wb_ml/v1/lujing_test (Create lujing_test)
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,364 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/wb_ml/v1/lujing_test' 发现了 20 个适用的测试用例 (已排序): ['TC-STATUS-001', 'TC-HEADER-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-004', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', 'TC-CORE-FUNC-002', 'TC-SECURITY-001', 'TC-ERROR-4001-QUERY', 'TC-ERROR-4001-BODY', 'TC-ERROR-4002', 'TC-ERROR-4006', 'TC-ERROR-4003-BODY', 'TC-ERROR-4003-QUERY']
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,365 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.365352
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,365 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,368 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,368 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.368844
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,368 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,370 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,370 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 17:53:11,370 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,370 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 17:53:11,370 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,370 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 17:53:11,370 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,370 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,370 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'location', 'position', 'coord'}
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.370422
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,370 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,371 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 17:53:11,371 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 17:53:11,371 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 17:53:11,371 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 17:53:11,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,371 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,371 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,371 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,371 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 17:53:11,371 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.372101
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,372 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.373196
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,373 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,374 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Success', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}}
2025-07-11 17:53:11,374 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 17:53:11,374 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.374582
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,374 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourceCollectionPluralCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-004' (资源集合复数命名检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.375834
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,375 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-004' 执行失败。
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 失败
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.376983
2025-07-11 17:53:11,376 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.365352"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.365352"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.368844"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.368844"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.370422"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.370422"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.372101"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.372101"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.373196"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.373196"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
status_code: 200
responses: {'200': {'description': 'Success', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}}
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.374582"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.374582"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.375834"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.375834"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.376983"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.378001
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,378 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,379 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (返回体JSON Schema验证) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.379166
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,379 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,380 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 17:53:11,380 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.381778
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,381 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,382 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,383 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,383 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,383 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,383 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,383 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.383039
2025-07-11 17:53:11,383 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,383 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,383 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-002' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: FlexibleSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,384 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'POST /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-002' (灵活的返回体JSON Schema验证) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.384282
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,384 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,385 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS 协议强制性检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.385306
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,385 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,385 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test' 不是HTTPS。跳过此测试用例的URL修改。
2025-07-11 17:53:11,386 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,386 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test.
2025-07-11 17:53:11,386 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 17:53:11,386 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (查询参数类型不匹配检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.386350
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,386 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No target field or original type identified for query param type mismatch. Skipping query param modification.
2025-07-11 17:53:11,386 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,386 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body.
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,386 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,386 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,386 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,386 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,386 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,386 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0015761852264404297
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Initializing: Looking for a simple type field in request body for type mismatch test.
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema...
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=version, Type=string
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (请求体字段类型不匹配检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.388387
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters.
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['version'], Original type: string
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'.
2025-07-11 17:53:11,388 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345'
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path.
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,388 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,388 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.376983"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.378001"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.378001"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.379166"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.379166"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.381778"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.381778"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.383039"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.383039"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.384282"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.384282"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.385306"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.385306"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.386350"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.386350"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0007448196411132812
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body.
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - DEBUG - 在路径 data.0.record_count 找到范围受限字段。
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Found ranged numeric field in BODY at path: data.0.record_count
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Target found in 'body' at path 'data.0.record_count'. Type: integer, Min: 0, Max: 10000, Desc: ''
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Setting out-of-range value to 10001 (max is 10000).
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (数值参数越界检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.389858
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,389 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 data.0.record_count (键 'record_count') 处设置值为 '10001'
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Successfully injected out-of-range value into parameters.
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,389 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,389 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,390 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0007638931274414062
2025-07-11 17:53:11,390 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4002' 执行失败。
2025-07-11 17:53:11,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 失败
2025-07-11 17:53:11,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,390 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,390 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,390 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,390 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 17:53:11,391 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 17:53:11,391 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (非法枚举值检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.391574
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,391 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,392 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['data'], 属性: ['version', 'act', 'data']
2025-07-11 17:53:11,392 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'data'
2025-07-11 17:53:11,392 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data'
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (缺失必填请求体字段检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.392751
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,392 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'data' 成功移除字段 'data' (原值: '[{'description': 'example_string', 'lujing_test_id': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T17:53:11.392751'}]')。
2025-07-11 17:53:11,392 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data'。
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,392 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,393 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 17:53:11,393 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (缺失必填查询参数检查) 已针对端点 'POST /api/dms/wb_ml/v1/lujing_test' 初始化。Target param to remove: None
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (缺失必填查询参数检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 array 类型数据 for (context: create_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 number/integer 类型数据 for (context: create_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,393 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.394004
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,394 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,394 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,394 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,394 - root - INFO - relevant_failed_tcs: []
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/wb_ml/v1/lujing_test' 测试完成,最终状态: 通过
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/wb_ml/v1/lujing_test/1.0.0 (List lujing_test)
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,394 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 发现了 20 个适用的测试用例 (已排序): ['TC-STATUS-001', 'TC-HEADER-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-004', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', 'TC-CORE-FUNC-002', 'TC-SECURITY-001', 'TC-ERROR-4001-QUERY', 'TC-ERROR-4001-BODY', 'TC-ERROR-4002', 'TC-ERROR-4006', 'TC-ERROR-4003-BODY', 'TC-ERROR-4003-QUERY']
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,395 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 初始化。
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,395 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,396 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 初始化。
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,396 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,396 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 17:53:11,396 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,396 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 17:53:11,396 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,396 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 17:53:11,396 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,396 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,397 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'location', 'position', 'coord'}
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,397 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 0, 'data': [{'description': 'example_string', 'lujing_test_id': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T17:53:11.394004'}], 'message': "获取 'lujing_test' 列表成功"}
2025-07-11 17:53:11,397 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 0, 'data': [{'description': 'example_string', 'lujing_test_id': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T17:53:11.394004'}], 'message': "获取 'lujing_test' 列表成功"}
2025-07-11 17:53:11,397 - testcase.TC-SECURITY-002 - INFO - response_data:[{'description': 'example_string', 'lujing_test_id': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T17:53:11.394004'}]
2025-07-11 17:53:11,397 - testcase.TC-SECURITY-002 - INFO - response_data:{'description': 'example_string', 'lujing_test_id': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T17:53:11.394004'}
2025-07-11 17:53:11,397 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,397 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,398 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,398 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,399 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,399 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,399 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,399 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,399 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,399 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,399 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,399 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,399 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Successful Operation', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'array', 'items': {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}}}}}}}}
2025-07-11 17:53:11,399 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 193' -d '{"version": 12345, "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.388387"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 193\' -d \'{"version": 12345, "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.388387"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 199' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 10001, "status": "active", "update_date": "2025-07-11T17:53:11.389858"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 199\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 10001, "status": "active", "update_date": "2025-07-11T17:53:11.389858"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.391574"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.391574"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 30' -d '{"version": "1.0.0", "act": 0}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 30\' -d \'{"version": "1.0.0", "act": 0}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.394004"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.394004"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
status_code: 200
responses: 2025-07-11 17:53:11,399 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 17:53:11,399 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-001' 执行失败。
2025-07-11 17:53:11,399 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourceCollectionPluralCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-004' (资源集合复数命名检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-004' 执行失败。
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 失败
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,401 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,402 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,403 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 初始化。
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (返回体JSON Schema验证) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,403 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,404 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 17:53:11,404 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,404 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-003' 执行失败。
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 失败
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,405 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-002' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: FlexibleSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,406 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 初始化。
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-002' (灵活的返回体JSON Schema验证) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,406 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,407 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 初始化。
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS 协议强制性检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,407 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,407 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0' 不是HTTPS。跳过此测试用例的URL修改。
2025-07-11 17:53:11,408 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,408 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: POST /api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,408 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test.
2025-07-11 17:53:11,408 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 17:53:11,408 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (查询参数类型不匹配检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,408 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No target field or original type identified for query param type mismatch. Skipping query param modification.
2025-07-11 17:53:11,408 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,408 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body.
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,408 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,408 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,408 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,408 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,408 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,408 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'NoneType'>
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0006561279296875
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: POST /api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Initializing: Looking for a simple type field in request body for type mismatch test.
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - DEBUG - No suitable request body schema found
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] No request body schema found for endpoint. Skipping type mismatch target search.
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Conclusion: No target field identified for request body type mismatch test.
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (请求体字段类型不匹配检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters.
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] No target field or original type identified for body type mismatch. Skipping body modification.
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,409 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,409 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'NoneType'>
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Skipped type mismatch (body) validation: No target field was identified.
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0007050037384033203
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-BODY' 执行成功。
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 通过
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: POST /api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - DEBUG - No suitable request body schema found
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters.
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters.
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters.
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location.
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint.
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (数值参数越界检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,410 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,410 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'NoneType'>
{'200': {'description': 'Successful Operation', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'array', 'items': {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}}}}}}}}
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
2025-07-11 17:53:11,411 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.000762939453125
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,411 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 17:53:11,411 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 17:53:11,411 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (非法枚举值检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,411 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,412 - testcase.TC-ERROR-4003-BODY - INFO - 此端点规范中未定义或找到请求体 schema通过基类方法
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (缺失必填请求体字段检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,412 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,413 - testcase.TC-ERROR-4003-BODY - INFO - 由于未识别到可移除的必填请求体字段,跳过此测试用例的验证。
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-BODY' 执行成功。
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 通过
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,413 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 17:53:11,413 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (缺失必填查询参数检查) 已针对端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 初始化。Target param to remove: None
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (缺失必填查询参数检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,413 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 17:53:11,414 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,414 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,414 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,414 - root - INFO - relevant_failed_tcs: []
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 测试完成,最终状态: 通过
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id} (Read lujing_test)
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}' 发现了 20 个适用的测试用例 (已排序): ['TC-STATUS-001', 'TC-HEADER-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-004', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', 'TC-CORE-FUNC-002', 'TC-SECURITY-001', 'TC-ERROR-4001-QUERY', 'TC-ERROR-4001-BODY', 'TC-ERROR-4002', 'TC-ERROR-4006', 'TC-ERROR-4003-BODY', 'TC-ERROR-4003-QUERY']
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('id') 的 schema...
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,414 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}' 初始化。
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'read_lujing_test': {'id': 'param_id'}
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'read_lujing_test': None
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'read_lujing_test': application/json
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'read_lujing_test' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'id': 'param_id'}
2025-07-11 17:53:11,414 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0/param_id
2025-07-11 17:53:11,415 - testcase.TC-STATUS-001 - WARNING - 状态码验证失败: 期望 200, 实际 404 for http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0/param_id
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - ERROR - 关键的前置测试用例 'TC-STATUS-001' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}' 失败。后续测试将被跳过。原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-STATUS-001' 执行失败。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-HEADER-001' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-HEADER-001' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-SECURITY-002' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-SECURITY-002' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-LLM-COMPLIANCE-001' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-LLM-COMPLIANCE-001' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-RESTful-001' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-001' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-DMS-PAGINATION-001' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-DMS-PAGINATION-001' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-RESTful-004' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-004' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-RESTful-002' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-002' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-DMS-CORE-SCHEMA-001' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-DMS-CORE-SCHEMA-001' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-CORE-FUNC-001' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-CORE-FUNC-001' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-RESTful-003' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-003' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-DMS-URL-VERSION-001' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-DMS-URL-VERSION-001' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-CORE-FUNC-002' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-CORE-FUNC-002' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-SECURITY-001' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-SECURITY-001' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-ERROR-4001-QUERY' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4001-QUERY' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-ERROR-4001-BODY' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4001-BODY' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-ERROR-4002' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4002' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-ERROR-4006' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4006' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-ERROR-4003-BODY' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4003-BODY' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-ERROR-4003-QUERY' for 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4003-QUERY' 被跳过。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 跳过
2025-07-11 17:53:11,415 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,415 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,415 - root - INFO - relevant_failed_tcs: [<ddms_compliance_suite.test_orchestrator.ExecutedTestCaseResult object at 0x10680aa50>]
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}' 测试完成,最终状态: 失败
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: PUT /api/dms/wb_ml/v1/lujing_test (Update lujing_test)
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,415 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/wb_ml/v1/lujing_test' 发现了 20 个适用的测试用例 (已排序): ['TC-STATUS-001', 'TC-HEADER-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-004', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', 'TC-CORE-FUNC-002', 'TC-SECURITY-001', 'TC-ERROR-4001-QUERY', 'TC-ERROR-4001-BODY', 'TC-ERROR-4002', 'TC-ERROR-4006', 'TC-ERROR-4003-BODY', 'TC-ERROR-4003-QUERY']
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,416 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'PUT /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.416328
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,416 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,417 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,417 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'PUT /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.417493
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,417 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,418 - RequiredHeadersSchemaCheck - INFO - API端点: PUT /api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,418 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 17:53:11,418 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,418 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 17:53:11,418 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,418 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 17:53:11,418 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,418 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,418 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'location', 'position', 'coord'}
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.418636
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,418 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,419 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 17:53:11,419 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 17:53:11,419 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,419 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.419742
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,419 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,420 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.421044
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0"
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0/param_id
DEBUG: curlify generated command (repr): "curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test/1.0.0/param_id"
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.416328"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.416328"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.417493"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.417493"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.418636"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.418636"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.419742"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.419742"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.421044"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,421 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Success', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}}
2025-07-11 17:53:11,421 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 17:53:11,421 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,421 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.422184
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,422 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourceCollectionPluralCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-004' (资源集合复数命名检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.423306
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,423 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-004' 执行成功。
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 通过
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.424326
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,424 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.425368
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,425 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,426 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'PUT /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (返回体JSON Schema验证) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.426346
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,426 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,427 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 17:53:11,427 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.427322
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,427 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.428394
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,428 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-002' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: FlexibleSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,429 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'PUT /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-002' (灵活的返回体JSON Schema验证) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.429420
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,429 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.421044"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
status_code: 200
responses: {'200': {'description': 'Success', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}}
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.422184"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.422184"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.423306"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.423306"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.424326"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.424326"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.425368"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.425368"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.426346"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.426346"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.427322"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.427322"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.428394"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.428394"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,430 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'PUT /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS 协议强制性检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.430437
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,430 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,430 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test' 不是HTTPS。跳过此测试用例的URL修改。
2025-07-11 17:53:11,431 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,431 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: PUT /api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,431 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test.
2025-07-11 17:53:11,431 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 17:53:11,431 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (查询参数类型不匹配检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.431487
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,431 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No target field or original type identified for query param type mismatch. Skipping query param modification.
2025-07-11 17:53:11,431 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,431 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body.
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,431 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,431 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,431 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,431 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,431 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,431 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0006959438323974609
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: PUT /api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Initializing: Looking for a simple type field in request body for type mismatch test.
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema...
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=version, Type=string
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (请求体字段类型不匹配检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.432731
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters.
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['version'], Original type: string
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'.
2025-07-11 17:53:11,432 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345'
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path.
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,432 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,432 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,433 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0009379386901855469
2025-07-11 17:53:11,433 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。
2025-07-11 17:53:11,433 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败
2025-07-11 17:53:11,433 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,433 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,433 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: PUT /api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body.
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - DEBUG - 在路径 data.0.record_count 找到范围受限字段。
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Found ranged numeric field in BODY at path: data.0.record_count
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Target found in 'body' at path 'data.0.record_count'. Type: integer, Min: 0, Max: 10000, Desc: ''
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Setting out-of-range value to 10001 (max is 10000).
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (数值参数越界检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.434687
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,434 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 data.0.record_count (键 'record_count') 处设置值为 '10001'
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Successfully injected out-of-range value into parameters.
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,434 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,434 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,435 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0009801387786865234
2025-07-11 17:53:11,435 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4002' 执行失败。
2025-07-11 17:53:11,435 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 失败
2025-07-11 17:53:11,435 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,435 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,435 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,435 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,435 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,435 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,435 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,435 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,435 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 17:53:11,435 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 17:53:11,435 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (非法枚举值检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.436122
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,436 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,437 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['data'], 属性: ['version', 'act', 'data']
2025-07-11 17:53:11,437 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'data'
2025-07-11 17:53:11,437 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data'
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (缺失必填请求体字段检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.437424
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,437 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'data' 成功移除字段 'data' (原值: '[{'description': 'example_string', 'lujing_test_id': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T17:53:11.437424'}]')。
2025-07-11 17:53:11,437 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data'。
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,437 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,438 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 17:53:11,438 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (缺失必填查询参数检查) 已针对端点 'PUT /api/dms/wb_ml/v1/lujing_test' 初始化。Target param to remove: None
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (缺失必填查询参数检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 array 类型数据 for (context: update_lujing_test_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'lujing_test_id': {'description': '主键 for lujing_test', 'title': '主键', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}}, 'required': ['lujing_test_id', 'status'], 'title': '测试', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body.data[0]). Properties: ['description', 'lujing_test_id', 'record_count', 'status', 'update_date']
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].lujing_test_id): example_string
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 number/integer 类型数据 for (context: update_lujing_test_body.data[0].record_count): 0
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T17:53:11.438603
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,438 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,439 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,439 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,439 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,439 - root - INFO - relevant_failed_tcs: []
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/wb_ml/v1/lujing_test' 测试完成,最终状态: 通过
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: DELETE /api/dms/wb_ml/v1/lujing_test (Delete lujing_test)
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 发现了 20 个适用的测试用例 (已排序): ['TC-STATUS-001', 'TC-HEADER-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-004', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', 'TC-CORE-FUNC-002', 'TC-SECURITY-001', 'TC-ERROR-4001-QUERY', 'TC-ERROR-4001-BODY', 'TC-ERROR-4002', 'TC-ERROR-4006', 'TC-ERROR-4003-BODY', 'TC-ERROR-4003-QUERY']
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,439 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,440 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,440 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.429420"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.429420"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.430437"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.430437"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.431487"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.431487"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 193' -d '{"version": 12345, "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.432731"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 193\' -d \'{"version": 12345, "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.432731"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 199' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 10001, "status": "active", "update_date": "2025-07-11T17:53:11.434687"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 199\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 10001, "status": "active", "update_date": "2025-07-11T17:53:11.434687"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.436122"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.436122"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 30' -d '{"version": "1.0.0", "act": 0}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 30\' -d \'{"version": "1.0.0", "act": 0}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 195' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.438603"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 195\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.438603"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,441 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,441 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,441 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,442 - RequiredHeadersSchemaCheck - INFO - API端点: DELETE /api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,442 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 17:53:11,442 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,442 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 17:53:11,442 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,442 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 17:53:11,442 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,442 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,442 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'location', 'position', 'coord'}
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,442 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,443 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 404, 'data': False, 'message': '未找到要删除的资源'}
2025-07-11 17:53:11,443 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 404, 'data': False, 'message': '未找到要删除的资源'}
2025-07-11 17:53:11,443 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,443 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,443 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,444 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,445 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Success', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}}
2025-07-11 17:53:11,445 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 17:53:11,445 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,445 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourceCollectionPluralCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-004' (资源集合复数命名检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,446 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-004' 执行成功。
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 通过
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,447 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,448 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,449 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (返回体JSON Schema验证) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,449 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
status_code: 200
responses: {'200': {'description': 'Success', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}}
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,450 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 17:53:11,450 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,450 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,451 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-002' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: FlexibleSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,452 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-002' (灵活的返回体JSON Schema验证) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,452 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,453 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS 协议强制性检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,453 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,453 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test' 不是HTTPS。跳过此测试用例的URL修改。
2025-07-11 17:53:11,454 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,454 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: DELETE /api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,454 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test.
2025-07-11 17:53:11,454 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 17:53:11,454 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (查询参数类型不匹配检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,454 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,454 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No target field or original type identified for query param type mismatch. Skipping query param modification.
2025-07-11 17:53:11,455 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,455 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body.
2025-07-11 17:53:11,455 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,455 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,455 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,455 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,455 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,455 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,455 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.001287221908569336
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: DELETE /api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Initializing: Looking for a simple type field in request body for type mismatch test.
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema...
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=version, Type=string
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (请求体字段类型不匹配检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters.
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['version'], Original type: string
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'.
2025-07-11 17:53:11,456 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345'
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path.
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,456 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,456 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.001188039779663086
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: DELETE /api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body.
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters.
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters.
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters.
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location.
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint.
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (数值参数越界检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,458 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,458 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,459 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0011968612670898438
2025-07-11 17:53:11,459 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。
2025-07-11 17:53:11,459 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过
2025-07-11 17:53:11,459 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,459 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,459 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,459 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,459 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,459 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,459 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,459 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,459 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 17:53:11,459 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 17:53:11,459 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (非法枚举值检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 17:53:11,460 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,461 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['data'], 属性: ['version', 'data']
2025-07-11 17:53:11,461 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'data'
2025-07-11 17:53:11,461 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data'
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (缺失必填请求体字段检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,461 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'data' 成功移除字段 'data' (原值: '[{'description': 'example_string'}]')。
2025-07-11 17:53:11,461 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data'。
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,461 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,462 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 17:53:11,462 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (缺失必填查询参数检查) 已针对端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 初始化。Target param to remove: None
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (缺失必填查询参数检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 array 类型数据 for (context: delete_lujing_test_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,462 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 63' -d '{"version": 12345, "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 63\' -d \'{"version": 12345, "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 20' -d '{"version": "1.0.0"}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 20\' -d \'{"version": "1.0.0"}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 17:53:11,463 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,463 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,463 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,463 - root - INFO - relevant_failed_tcs: []
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 测试完成,最终状态: 通过
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report (Create wb_dr_pro_daily_report)
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 发现了 20 个适用的测试用例 (已排序): ['TC-STATUS-001', 'TC-HEADER-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-004', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', 'TC-CORE-FUNC-002', 'TC-SECURITY-001', 'TC-ERROR-4001-QUERY', 'TC-ERROR-4001-BODY', 'TC-ERROR-4002', 'TC-ERROR-4006', 'TC-ERROR-4003-BODY', 'TC-ERROR-4003-QUERY']
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,463 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.463505
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,463 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,464 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,464 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.464607
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,464 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,465 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,465 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 17:53:11,465 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,465 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 17:53:11,465 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,465 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 17:53:11,465 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,465 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,465 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'location', 'position', 'coord'}
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.465794
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,465 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,466 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 17:53:11,466 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 17:53:11,466 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,466 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,466 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.467072
2025-07-11 17:53:11,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,467 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,467 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,467 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.468262
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,468 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,469 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Success', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}}
2025-07-11 17:53:11,469 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 17:53:11,469 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.469471
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,469 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourceCollectionPluralCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-004' (资源集合复数命名检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.470481
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,470 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.463505", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.463505", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.464607", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.464607", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.465794", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.465794", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.467072", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.467072", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.468262", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.468262", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
status_code: 200
responses: {'200': {'description': 'Success', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}}
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.469471", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.469471", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.470481", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-004' 执行失败。
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 失败
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.471574
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,471 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.472663
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,472 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,473 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (返回体JSON Schema验证) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.473661
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,473 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,474 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 17:53:11,474 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.474859
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,474 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,475 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。
2025-07-11 17:53:11,475 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.476219
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,476 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-002' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: FlexibleSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,477 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-002' (灵活的返回体JSON Schema验证) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.477409
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,477 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,478 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS 协议强制性检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.478509
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,478 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,478 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report' 不是HTTPS。跳过此测试用例的URL修改。
2025-07-11 17:53:11,479 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,479 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,479 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test.
2025-07-11 17:53:11,479 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 17:53:11,479 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (查询参数类型不匹配检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.479566
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,479 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No target field or original type identified for query param type mismatch. Skipping query param modification.
2025-07-11 17:53:11,479 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,479 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body.
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,479 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,479 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,479 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,479 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,479 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,479 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.470481", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.471574", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.471574", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.472663", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.472663", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.473661", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.473661", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.474859", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.474859", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.476219", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.476219", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.477409", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.477409", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.478509", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.478509", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0007660388946533203
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Initializing: Looking for a simple type field in request body for type mismatch test.
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema...
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=version, Type=string
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (请求体字段类型不匹配检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.480753
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters.
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['version'], Original type: string
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'.
2025-07-11 17:53:11,480 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345'
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path.
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,480 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,481 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0006856918334960938
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,481 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,481 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 17:53:11,481 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json
2025-07-11 17:53:11,481 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body.
2025-07-11 17:53:11,481 - testcase.TC-ERROR-4002 - DEBUG - 在路径 data.0.record_count 找到范围受限字段。
2025-07-11 17:53:11,481 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Found ranged numeric field in BODY at path: data.0.record_count
2025-07-11 17:53:11,481 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Target found in 'body' at path 'data.0.record_count'. Type: integer, Min: 0, Max: 10000, Desc: ''
2025-07-11 17:53:11,481 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Setting out-of-range value to 10001 (max is 10000).
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (数值参数越界检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.481922
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,481 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 data.0.record_count (键 'record_count') 处设置值为 '10001'
2025-07-11 17:53:11,481 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Successfully injected out-of-range value into parameters.
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,481 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,481 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,482 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,482 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,482 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,482 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,482 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0007860660552978516
2025-07-11 17:53:11,482 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4002' 执行失败。
2025-07-11 17:53:11,482 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 失败
2025-07-11 17:53:11,482 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,482 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,482 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,482 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,482 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,482 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,482 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,482 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,482 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 17:53:11,483 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 17:53:11,483 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (非法枚举值检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.483139
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,483 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,484 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['data'], 属性: ['version', 'act', 'data']
2025-07-11 17:53:11,484 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'data'
2025-07-11 17:53:11,484 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data'
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (缺失必填请求体字段检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.484551
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,484 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'data' 成功移除字段 'data' (原值: '[{'description': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T17:53:11.484551', 'wb_dr_pro_daily_report_id': 'example_string'}]')。
2025-07-11 17:53:11,484 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data'。
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,484 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,485 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 17:53:11,485 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (缺失必填查询参数检查) 已针对端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。Target param to remove: None
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (缺失必填查询参数检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: create_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: create_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: create_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: create_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.485883
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: create_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,485 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,486 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,486 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,486 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,486 - root - INFO - relevant_failed_tcs: []
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 测试完成,最终状态: 通过
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0 (List wb_dr_pro_daily_report)
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,486 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'。
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0' 发现了 20 个适用的测试用例 (已排序): ['TC-STATUS-001', 'TC-HEADER-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-004', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', 'TC-CORE-FUNC-002', 'TC-SECURITY-001', 'TC-ERROR-4001-QUERY', 'TC-ERROR-4001-BODY', 'TC-ERROR-4002', 'TC-ERROR-4006', 'TC-ERROR-4003-BODY', 'TC-ERROR-4003-QUERY']
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,487 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0' 初始化。
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,487 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,487 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,488 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0' 初始化。
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,488 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,488 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,488 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 17:53:11,488 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,488 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 17:53:11,488 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,489 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 17:53:11,489 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,489 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,489 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'location', 'position', 'coord'}
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,489 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,489 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 0, 'data': [{'description': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T17:53:11.485883', 'wb_dr_pro_daily_report_id': 'example_string'}], 'message': "获取 'wb_dr_pro_daily_report' 列表成功"}
2025-07-11 17:53:11,489 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 0, 'data': [{'description': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T17:53:11.485883', 'wb_dr_pro_daily_report_id': 'example_string'}], 'message': "获取 'wb_dr_pro_daily_report' 列表成功"}
2025-07-11 17:53:11,489 - testcase.TC-SECURITY-002 - INFO - response_data:[{'description': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T17:53:11.485883', 'wb_dr_pro_daily_report_id': 'example_string'}]
2025-07-11 17:53:11,490 - testcase.TC-SECURITY-002 - INFO - response_data:{'description': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T17:53:11.485883', 'wb_dr_pro_daily_report_id': 'example_string'}
2025-07-11 17:53:11,490 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,490 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.479566", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.479566", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 204' -d '{"version": 12345, "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.480753", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 204\' -d \'{"version": 12345, "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.480753", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 210' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 10001, "status": "active", "update_date": "2025-07-11T17:53:11.481922", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 210\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 10001, "status": "active", "update_date": "2025-07-11T17:53:11.481922", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.483139", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.483139", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 30' -d '{"version": "1.0.0", "act": 0}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 30\' -d \'{"version": "1.0.0", "act": 0}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.485883", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.485883", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
2025-07-11 17:53:11,490 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,491 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Successful Operation', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'array', 'items': {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}}}}}}}}
2025-07-11 17:53:11,491 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 17:53:11,491 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-001' 执行失败。
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,491 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,492 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,492 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,492 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,492 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,492 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,492 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,492 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourceCollectionPluralCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-004' (资源集合复数命名检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,493 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-004' 执行失败。
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 失败
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,494 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,495 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0' 初始化。
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (返回体JSON Schema验证) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,495 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,496 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 17:53:11,496 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,496 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-003' 执行失败。
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 失败
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,497 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-002' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: FlexibleSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,498 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0' 初始化。
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-002' (灵活的返回体JSON Schema验证) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,498 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,499 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0' 初始化。
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS 协议强制性检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,499 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,499 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0' 不是HTTPS。跳过此测试用例的URL修改。
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
status_code: 200
responses: {'200': {'description': 'Successful Operation', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'array', 'items': {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}}}}}}}}
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,500 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,500 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,500 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test.
2025-07-11 17:53:11,500 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 17:53:11,500 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (查询参数类型不匹配检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,500 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No target field or original type identified for query param type mismatch. Skipping query param modification.
2025-07-11 17:53:11,500 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,500 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body.
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,500 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,500 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,500 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,500 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,500 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,500 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'NoneType'>
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0006802082061767578
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Initializing: Looking for a simple type field in request body for type mismatch test.
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - DEBUG - No suitable request body schema found
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] No request body schema found for endpoint. Skipping type mismatch target search.
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Conclusion: No target field identified for request body type mismatch test.
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (请求体字段类型不匹配检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters.
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] No target field or original type identified for body type mismatch. Skipping body modification.
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,501 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,501 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'NoneType'>
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Skipped type mismatch (body) validation: No target field was identified.
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0006651878356933594
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-BODY' 执行成功。
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 通过
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - DEBUG - No suitable request body schema found
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters.
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters.
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters.
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location.
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint.
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (数值参数越界检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,502 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,502 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'NoneType'>
2025-07-11 17:53:11,503 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0006749629974365234
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,503 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 17:53:11,503 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 17:53:11,503 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (非法枚举值检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,503 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,505 - testcase.TC-ERROR-4003-BODY - INFO - 此端点规范中未定义或找到请求体 schema通过基类方法
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (缺失必填请求体字段检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,505 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,506 - testcase.TC-ERROR-4003-BODY - INFO - 由于未识别到可移除的必填请求体字段,跳过此测试用例的验证。
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-BODY' 执行成功。
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 通过
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,506 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 17:53:11,506 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (缺失必填查询参数检查) 已针对端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0' 初始化。Target param to remove: None
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (缺失必填查询参数检查) for endpoint 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0'
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'list_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,506 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 17:53:11,507 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,507 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,507 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,507 - root - INFO - relevant_failed_tcs: []
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0' 测试完成,最终状态: 通过
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id} (Read wb_dr_pro_daily_report)
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'。
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}' 发现了 20 个适用的测试用例 (已排序): ['TC-STATUS-001', 'TC-HEADER-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-004', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', 'TC-CORE-FUNC-002', 'TC-SECURITY-001', 'TC-ERROR-4001-QUERY', 'TC-ERROR-4001-BODY', 'TC-ERROR-4002', 'TC-ERROR-4006', 'TC-ERROR-4003-BODY', 'TC-ERROR-4003-QUERY']
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('id') 的 schema...
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,507 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,508 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,508 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}' 初始化。
2025-07-11 17:53:11,508 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'
2025-07-11 17:53:11,508 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'read_wb_dr_pro_daily_report': {'id': 'param_id'}
2025-07-11 17:53:11,508 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'read_wb_dr_pro_daily_report': None
2025-07-11 17:53:11,508 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'read_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,508 - ddms_compliance_suite.test_orchestrator - DEBUG - No request body schema found or applicable for 'read_wb_dr_pro_daily_report' with Content-Type 'application/json'. Initial body is None.
2025-07-11 17:53:11,508 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'id': 'param_id'}
2025-07-11 17:53:11,508 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/param_id
2025-07-11 17:53:11,509 - testcase.TC-STATUS-001 - WARNING - 状态码验证失败: 期望 200, 实际 404 for http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/param_id
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - ERROR - 关键的前置测试用例 'TC-STATUS-001' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}' 失败。后续测试将被跳过。原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-STATUS-001' 执行失败。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-HEADER-001' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-HEADER-001' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-SECURITY-002' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-SECURITY-002' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-LLM-COMPLIANCE-001' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-LLM-COMPLIANCE-001' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-RESTful-001' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-001' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-DMS-PAGINATION-001' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-DMS-PAGINATION-001' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-RESTful-004' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-004' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-RESTful-002' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-002' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-DMS-CORE-SCHEMA-001' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-DMS-CORE-SCHEMA-001' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-CORE-FUNC-001' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-CORE-FUNC-001' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-RESTful-003' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-003' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-DMS-URL-VERSION-001' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-DMS-URL-VERSION-001' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-CORE-FUNC-002' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-CORE-FUNC-002' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-SECURITY-001' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-SECURITY-001' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-ERROR-4001-QUERY' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4001-QUERY' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-ERROR-4001-BODY' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4001-BODY' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-ERROR-4002' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4002' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-ERROR-4006' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4006' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-ERROR-4003-BODY' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4003-BODY' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - WARNING - 由于关键的前置测试用例失败,跳过测试用例 'TC-ERROR-4003-QUERY' for 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}'. 原因: 关键测试 'TC-STATUS-001' 失败 (状态: 失败)。消息:
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4003-QUERY' 被跳过。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 跳过
2025-07-11 17:53:11,509 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,509 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,509 - root - INFO - relevant_failed_tcs: [<ddms_compliance_suite.test_orchestrator.ExecutedTestCaseResult object at 0x10597dbe0>]
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}' 测试完成,最终状态: 失败
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report (Update wb_dr_pro_daily_report)
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 发现了 20 个适用的测试用例 (已排序): ['TC-STATUS-001', 'TC-HEADER-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-004', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', 'TC-CORE-FUNC-002', 'TC-SECURITY-001', 'TC-ERROR-4001-QUERY', 'TC-ERROR-4001-BODY', 'TC-ERROR-4002', 'TC-ERROR-4006', 'TC-ERROR-4003-BODY', 'TC-ERROR-4003-QUERY']
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,509 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,509 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,510 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,510 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,510 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,510 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,510 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.510034
2025-07-11 17:53:11,510 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,510 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,510 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,510 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,511 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,511 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.511494
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,511 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,512 - RequiredHeadersSchemaCheck - INFO - API端点: PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,512 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 17:53:11,512 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,512 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 17:53:11,512 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,512 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 17:53:11,512 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,512 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,512 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'location', 'position', 'coord'}
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,512 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.513055
2025-07-11 17:53:11,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,513 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,513 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,513 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
DEBUG: curlify generated command (repr): "curl -X POST -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 0' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0"
DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/param_id
DEBUG: curlify generated command (repr): "curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/param_id"
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.510034", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.510034", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.511494", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.511494", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.513055", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,514 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 17:53:11,514 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 17:53:11,514 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,514 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.514395
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,514 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.515490
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,515 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,516 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Success', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}}
2025-07-11 17:53:11,516 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 17:53:11,516 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.516632
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,516 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourceCollectionPluralCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-004' (资源集合复数命名检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.517851
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,517 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-004' 执行成功。
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 通过
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.519352
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,519 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.520539
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,520 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,521 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (返回体JSON Schema验证) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.521621
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,521 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.513055", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.514395", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.514395", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.515490", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.515490", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
status_code: 200
responses: {'200': {'description': 'Success', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}}
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.516632", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.516632", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.517851", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.517851", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.519352", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.519352", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.520539", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.520539", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.521621", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,522 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 17:53:11,522 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.522712
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,522 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.523702
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,523 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-002' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: FlexibleSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,524 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-002' (灵活的返回体JSON Schema验证) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.524881
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,524 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,525 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 17:53:11,525 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,525 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,525 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,525 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,525 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,525 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,525 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,525 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,526 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS 协议强制性检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.526135
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,526 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,526 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report' 不是HTTPS。跳过此测试用例的URL修改。
2025-07-11 17:53:11,527 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,527 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,527 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test.
2025-07-11 17:53:11,527 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 17:53:11,527 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (查询参数类型不匹配检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.527721
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,527 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No target field or original type identified for query param type mismatch. Skipping query param modification.
2025-07-11 17:53:11,527 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,527 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body.
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,527 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,527 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,527 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,527 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,527 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,527 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,528 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 17:53:11,528 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0008268356323242188
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,528 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,528 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Initializing: Looking for a simple type field in request body for type mismatch test.
2025-07-11 17:53:11,528 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json
2025-07-11 17:53:11,528 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema...
2025-07-11 17:53:11,528 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string
2025-07-11 17:53:11,528 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=version, Type=string
2025-07-11 17:53:11,528 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (请求体字段类型不匹配检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.528974
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,528 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,529 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters.
2025-07-11 17:53:11,529 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,529 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['version'], Original type: string
2025-07-11 17:53:11,529 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'.
2025-07-11 17:53:11,529 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345'
2025-07-11 17:53:11,529 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path.
2025-07-11 17:53:11,529 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,529 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,529 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,529 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,529 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,529 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,529 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,529 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0007300376892089844
2025-07-11 17:53:11,529 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。
2025-07-11 17:53:11,529 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败
2025-07-11 17:53:11,529 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,529 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,529 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,529 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,529 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,529 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,529 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,529 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body.
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - DEBUG - 在路径 data.0.record_count 找到范围受限字段。
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Found ranged numeric field in BODY at path: data.0.record_count
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Target found in 'body' at path 'data.0.record_count'. Type: integer, Min: 0, Max: 10000, Desc: ''
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Setting out-of-range value to 10001 (max is 10000).
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (数值参数越界检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.530185
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,530 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 data.0.record_count (键 'record_count') 处设置值为 '10001'
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Successfully injected out-of-range value into parameters.
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,530 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,530 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.521621", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.522712", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.522712", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.523702", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.523702", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.524881", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.524881", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.526135", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.526135", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.527721", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.527721", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 204' -d '{"version": 12345, "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.528974", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 204\' -d \'{"version": 12345, "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.528974", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 210' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 10001, "status": "active", "update_date": "2025-07-11T17:53:11.530185", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,531 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0008039474487304688
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4002' 执行失败。
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 失败
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,531 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 17:53:11,531 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 17:53:11,531 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (非法枚举值检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.531448
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,531 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,532 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['data'], 属性: ['version', 'act', 'data']
2025-07-11 17:53:11,532 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'data'
2025-07-11 17:53:11,532 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data'
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (缺失必填请求体字段检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.532704
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,532 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'data' 成功移除字段 'data' (原值: '[{'description': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T17:53:11.532704', 'wb_dr_pro_daily_report_id': 'example_string'}]')。
2025-07-11 17:53:11,532 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data'。
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,532 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,533 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 17:53:11,533 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (缺失必填查询参数检查) 已针对端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。Target param to remove: None
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (缺失必填查询参数检查) for endpoint 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body). Properties: ['version', 'act', 'data']
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: update_wb_dr_pro_daily_report_body.act): 0
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: update_wb_dr_pro_daily_report_body.data). Items schema: {'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}, 'record_count': {'maximum': 10000, 'minimum': 0, 'title': '记录数', 'type': 'integer'}, 'status': {'enum': ['active', 'inactive', 'archived'], 'title': '状态', 'type': 'string'}, 'update_date': {'format': 'date-time', 'title': '更新日期', 'type': 'string'}, 'wb_dr_pro_daily_report_id': {'description': '主键 for wb_dr_pro_daily_report', 'title': '主键', 'type': 'string'}}, 'required': ['wb_dr_pro_daily_report_id', 'status'], 'title': '钻井日报数据', 'type': 'object'}, minItems: 1
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0]). Properties: ['description', 'record_count', 'status', 'update_date', 'wb_dr_pro_daily_report_id']
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 number/integer 类型数据 for (context: update_wb_dr_pro_daily_report_body.data[0].record_count): 0
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].status): active
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('date-time') for (context: update_wb_dr_pro_daily_report_body.data[0].update_date): 2025-07-11T17:53:11.533933
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: update_wb_dr_pro_daily_report_body.data[0].wb_dr_pro_daily_report_id): example_string
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,533 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,534 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,534 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,534 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,534 - root - INFO - relevant_failed_tcs: []
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 测试完成,最终状态: 通过
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report (Delete wb_dr_pro_daily_report)
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,534 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 发现了 20 个适用的测试用例 (已排序): ['TC-STATUS-001', 'TC-HEADER-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-004', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', 'TC-CORE-FUNC-002', 'TC-SECURITY-001', 'TC-ERROR-4001-QUERY', 'TC-ERROR-4001-BODY', 'TC-ERROR-4002', 'TC-ERROR-4006', 'TC-ERROR-4003-BODY', 'TC-ERROR-4003-QUERY']
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,535 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,535 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,536 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,536 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,536 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,538 - RequiredHeadersSchemaCheck - INFO - API端点: DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,538 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 17:53:11,538 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,538 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 17:53:11,538 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,538 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 17:53:11,538 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 17:53:11,538 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,538 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'location', 'position', 'coord'}
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,538 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,539 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 404, 'data': False, 'message': '未找到要删除的资源'}
2025-07-11 17:53:11,539 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 404, 'data': False, 'message': '未找到要删除的资源'}
2025-07-11 17:53:11,539 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,539 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,539 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,540 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,541 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Success', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}}
2025-07-11 17:53:11,541 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 17:53:11,541 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,541 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 210\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 10001, "status": "active", "update_date": "2025-07-11T17:53:11.530185", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.531448", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.531448", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 30' -d '{"version": "1.0.0", "act": 0}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 30\' -d \'{"version": "1.0.0", "act": 0}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 206' -d '{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.533933", "wb_dr_pro_daily_report_id": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 206\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T17:53:11.533933", "wb_dr_pro_daily_report_id": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
status_code: 200
responses: {'200': {'description': 'Success', 'content': {'application/json': {'schema': {'type': 'object', 'properties': {'code': {'type': 'integer'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}}
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourceCollectionPluralCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-004' (资源集合复数命名检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,542 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-004' 执行成功。
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 通过
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,543 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,544 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,545 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (返回体JSON Schema验证) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,545 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,546 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 17:53:11,546 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,546 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,547 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-002' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: FlexibleSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,549 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-002' (灵活的返回体JSON Schema验证) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,549 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,550 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS 协议强制性检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,550 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report' 不是HTTPS。跳过此测试用例的URL修改。
2025-07-11 17:53:11,550 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,550 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,551 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,551 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test.
2025-07-11 17:53:11,551 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 17:53:11,551 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 17:53:11,551 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (查询参数类型不匹配检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,551 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,551 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,551 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,551 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,551 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,551 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,551 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,551 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,551 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No target field or original type identified for query param type mismatch. Skipping query param modification.
2025-07-11 17:53:11,551 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,551 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body.
2025-07-11 17:53:11,551 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,551 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,551 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,551 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,551 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,551 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,551 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0009348392486572266
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Initializing: Looking for a simple type field in request body for type mismatch test.
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema...
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=version, Type=string
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (请求体字段类型不匹配检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters.
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['version'], Original type: string
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'.
2025-07-11 17:53:11,552 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345'
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path.
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,552 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,552 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0008347034454345703
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body.
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters.
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters.
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters.
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location.
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint.
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (数值参数越界检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,553 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 17:53:11,553 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 17:53:11,554 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0007030963897705078
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,554 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 17:53:11,554 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 17:53:11,554 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (非法枚举值检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,554 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,555 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['data'], 属性: ['version', 'data']
2025-07-11 17:53:11,555 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'data'
2025-07-11 17:53:11,555 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data'
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (缺失必填请求体字段检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,555 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'data' 成功移除字段 'data' (原值: '[{'description': 'example_string'}]')。
2025-07-11 17:53:11,555 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data'。
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,555 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>) to dict using .spec attribute.
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_dms_raw_record', '_test_mode', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['dms_api_list'])
2025-07-11 17:53:11,556 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 17:53:11,556 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (缺失必填查询参数检查) 已针对端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。Target param to remove: None
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (缺失必填查询参数检查) for endpoint 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body). Properties: ['version', 'data']
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 使用 schema 中的 'example' 值 for (context: delete_wb_dr_pro_daily_report_body.version): 1.0.0
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 array 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data). Items schema: {'type': 'object', 'properties': {'description': {'description': '一个简单的描述字段', 'title': '描述', 'type': 'string'}}, 'required': ['description']}, minItems: 1
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 object 类型数据 for (context: delete_wb_dr_pro_daily_report_body.data[0]). Properties: ['description']
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_wb_dr_pro_daily_report] 生成 string 类型数据 ('') for (context: delete_wb_dr_pro_daily_report_body.data[0].description): example_string
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 17:53:11,556 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 17:53:11,557 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 17:53:11,557 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,557 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 17:53:11,557 - root - INFO - relevant_failed_tcs: []
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 测试完成,最终状态: 通过
2025-07-11 17:53:11,557 - __main__ - INFO - 开始执行API测试阶段 (Stages),目录: ./custom_stages
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行API测试阶段 (Stages)...
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - INFO - 发现了 1 个已定义的测试阶段: ['dms_crud_scenario_stage']
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - WARNING - 未知的解析规范类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>。将阶段应用于整个规范 (api_group_name=None).
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - INFO - 将针对 1 个API分组评估测试阶段: [None]
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - INFO - 处理测试阶段定义: ID='dms_crud_scenario_stage', Name='DMS Full CRUD Scenario'
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备阶段 'dms_crud_scenario_stage' 的上下文针对API分组: 'Global'
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - DEBUG - For Global context, selected 10 endpoint objects.
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - DEBUG - 为阶段 'dms_crud_scenario_stage' 和分组 'Global' 实例化。API对象数量: 10. 元数据: {'name': 'Global (所有API)', 'description': '适用于规范中的所有API'}
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - DEBUG - 检查阶段 'dms_crud_scenario_stage' 是否适用于API分组 'Global'...
2025-07-11 17:53:11,557 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Found complete CRUD scenario for DMS resource: 'lujing_test'
2025-07-11 17:53:11,557 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Found complete CRUD scenario for DMS resource: 'wb_dr_pro_daily_report'
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'dms_crud_scenario_stage' 适用于API分组 'Global'。开始执行...
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试阶段: ID='dms_crud_scenario_stage', Name='DMS Full CRUD Scenario', API分组='Global'
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - DEBUG - 调用 stage 'dms_crud_scenario_stage' 的 before_stage 钩子。初始上下文: {}
2025-07-11 17:53:11,557 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Setting up before_stage for scenario: ['create', 'list', 'read', 'update', 'delete']
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 开始执行.
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 调用 before_step 钩子. 上下文: {'pk_name': 'description', 'pk_value': '7cca7504-2eaa-44e7-aad9-9e9c6b1ce671', 'current_payload': {'description': 'test-entry-from-scenario'}, 'update_payload': {'description': 'updated-test-entry-from-scenario'}, 'scenario_endpoints': {'create': <DMSEndpoint Method:POST Path:/api/dms/wb_ml/v1/lujing_test Title:'Create lujing_test' Mode:standalone>, 'list': <DMSEndpoint Method:POST Path:/api/dms/wb_ml/v1/lujing_test/1.0.0 Title:'List lujing_test' Mode:scenario_only>, 'read': <DMSEndpoint Method:GET Path:/api/dms/wb_ml/v1/lujing_test/1.0.0/{id} Title:'Read lujing_test' Mode:scenario_only>, 'update': <DMSEndpoint Method:PUT Path:/api/dms/wb_ml/v1/lujing_test Title:'Update lujing_test' Mode:scenario_only>, 'delete': <DMSEndpoint Method:DELETE Path:/api/dms/wb_ml/v1/lujing_test Title:'Delete lujing_test' Mode:scenario_only>}}
2025-07-11 17:53:11,557 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - DEBUG - Executing before_step for step 'Step 1: Create Resource' in stage 'dms_crud_scenario_stage'
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 查找端点定义. Key='CREATE', Group='None'
2025-07-11 17:53:11,557 - ddms_compliance_suite.test_orchestrator - ERROR - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 步骤执行期间发生意外错误: name 'BaseEndpoint' is not defined
Traceback (most recent call last):
File "/Users/zpc01/workspace/zzlh/compliance/ddms_compliance_suite/test_orchestrator.py", line 2181, in execute_single_stage
if isinstance(api_op_spec, BaseEndpoint):
^^^^^^^^^^^^
NameError: name 'BaseEndpoint' is not defined. Did you mean: 'YAPIEndpoint'?
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 调用 after_step 钩子.
2025-07-11 17:53:11,559 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - DEBUG - Executing after_step for step 'Step 1: Create Resource' in stage 'dms_crud_scenario_stage'
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 执行完毕. 状态: 执行错误, 耗时: 0.00s
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - WARNING - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 状态为 执行错误 且 continue_on_failure=False. 中止测试阶段 'dms_crud_scenario_stage'.
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - DEBUG - 调用 stage 'dms_crud_scenario_stage' 的 after_stage 钩子. 当前阶段结果状态: 执行错误
2025-07-11 17:53:11,559 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Finished scenario 1/2 for this group.
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'dms_crud_scenario_stage' (API分组: 'Global') 执行完毕. 最终状态: 失败, 耗时: 0.00s
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - API Test Stage execution processed. Considered 1 (stage_definition x api_group) combinations.
2025-07-11 17:53:11,559 - __main__ - INFO - API测试阶段 (Stages) 执行完毕。
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - -------------------- API Test Summary --------------------
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Start Time: 2025-07-11T17:53:11.349827
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - End Time: 2025-07-11T17:53:11.559561
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Total Duration: 0.21 seconds
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - --- Endpoints ---
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Total Endpoints Defined: 10
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Endpoints Tested: 10
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Passed: 8
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Failed: 2
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Error: 0
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Skipped: 0
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Partial Success: 0
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Success Rate: 80.00%
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - --- Test Cases ---
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Total Test Cases Applicable: 200
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Total Test Cases Executed: 200
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Passed: 112
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Failed: 50
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Error: 0
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Skipped (within endpoints): 38
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Success Rate: 56.00%
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - --- Stages ---
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Total Stages Defined: 1
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Total Stages Executed: 2
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Passed: 0
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Failed: 2
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Error: 0
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Skipped: 0
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - Success Rate: 0.00%
2025-07-11 17:53:11,559 - ddms_compliance_suite.test_orchestrator - INFO - --------------------------------------------------------
2025-07-11 17:53:11,562 - __main__ - INFO - 测试结果已保存为JSON: test_reports/2025-07-11_17-53-11/summary.json
2025-07-11 17:53:11,562 - __main__ - INFO - 开始生成PDF报告: test_reports/2025-07-11_17-53-11/report_cn.pdf
2025-07-11 17:53:11,704 - __main__ - INFO - PDF报告已成功生成: test_reports/2025-07-11_17-53-11/report_cn.pdf
2025-07-11 17:53:11,708 - __main__ - INFO - API调用详情已保存为 Markdown: test_reports/2025-07-11_17-53-11/api_call_details.md
2025-07-11 17:53:11,708 - __main__ - INFO - 部分测试失败或出错,请检查报告。
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 63' -d '{"version": 12345, "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 63\' -d \'{"version": 12345, "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 20' -d '{"version": "1.0.0"}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 20\' -d \'{"version": "1.0.0"}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'
DEBUG: curlify generated command (raw): curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'Content-Type: application/json' -H 'Content-Length: 65' -d '{"version": "1.0.0", "data": [{"description": "example_string"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report
DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'Content-Type: application/json\' -H \'Content-Length: 65\' -d \'{"version": "1.0.0", "data": [{"description": "example_string"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report'