compliance/log_dms.txt
2025-07-11 18:58:18 +08:00

5390 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 18:57:44,869 - __main__ - DEBUG - 已启用详细日志模式
2025-07-11 18:57:44,869 - __main__ - INFO - 测试报告将保存到: /Users/zpc01/workspace/zzlh/compliance/test_reports/2025-07-11_18-57-44
2025-07-11 18:57:44,869 - ddms_compliance_suite.test_case_registry - INFO - Discovering custom test cases from: ./custom_testcases
2025-07-11 18:57:44,870 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: security_checks 从 ./custom_testcases/security_checks.py
2025-07-11 18:57:44,870 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-SECURITY-002' (敏感字段加密检查) 来自类 'EncryptedFieldsCheck' (路径: ./custom_testcases/security_checks.py)
2025-07-11 18:57:44,870 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: basic_checks 从 ./custom_testcases/basic_checks.py
2025-07-11 18:57:44,870 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-STATUS-001' (基本状态码 200 检查) 来自类 'StatusCode200Check' (路径: ./custom_testcases/basic_checks.py)
2025-07-11 18:57:44,870 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_llm_compliance_check 从 ./custom_testcases/llm/tc_llm_compliance_check.py
2025-07-11 18:57:44,870 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) 来自类 'LLMComplianceCheckTestCase' (路径: ./custom_testcases/llm/tc_llm_compliance_check.py)
2025-07-11 18:57:44,871 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: required_headers_check 从 ./custom_testcases/setup_checks/required_headers_check.py
2025-07-11 18:57:44,871 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-HEADER-001' (必需请求头Schema验证) 来自类 'RequiredHeadersSchemaCheck' (路径: ./custom_testcases/setup_checks/required_headers_check.py)
2025-07-11 18:57:44,871 - 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 18:57:44,871 - 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 18:57:44,872 - 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 18:57:44,872 - 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 18:57:44,872 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_pagination_params_check 从 ./custom_testcases/井筒/开发指南-后端/tc_pagination_params_check.py
2025-07-11 18:57:44,872 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-DMS-PAGINATION-001' (分页参数检查) 来自类 'PaginationParamsCheckTestCase' (路径: ./custom_testcases/井筒/开发指南-后端/tc_pagination_params_check.py)
2025-07-11 18:57:44,873 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_002 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_002.py
2025-07-11 18:57:44,873 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-002' (资源路径名词检查) 来自类 'ResourcePathNounCheckTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_002.py)
2025-07-11 18:57:44,873 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_003 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_003.py
2025-07-11 18:57:44,873 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-003' (时间字段ISO 8601格式检查) 来自类 'TimeFormatCheckTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_003.py)
2025-07-11 18:57:44,873 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_combined_001 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_combined_001.py
2025-07-11 18:57:44,873 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-001' (核心命名与结构规范检查) 来自类 'CoreNamingStructureTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_combined_001.py)
2025-07-11 18:57:44,874 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_004 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_004.py
2025-07-11 18:57:44,874 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-004' (资源集合复数命名检查) 来自类 'ResourceCollectionPluralCheckTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_004.py)
2025-07-11 18:57:44,874 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: https_mandatory_case 从 ./custom_testcases/compliance_catalog/security/https_mandatory_case.py
2025-07-11 18:57:44,874 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-SECURITY-001' (HTTPS 协议强制性检查) 来自类 'HTTPSMandatoryCase' (路径: ./custom_testcases/compliance_catalog/security/https_mandatory_case.py)
2025-07-11 18:57:44,874 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: url_llm_checks 从 ./custom_testcases/compliance_catalog/normative_spec/url_llm_checks.py
2025-07-11 18:57:44,874 - 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 18:57:44,875 - 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 18:57:44,875 - 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 18:57:44,875 - 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 18:57:44,875 - 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 18:57:44,875 - 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 18:57:44,875 - 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 18:57:44,876 - 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 18:57:44,876 - 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 18:57:44,876 - 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 18:57:44,876 - 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 18:57:44,876 - 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 18:57:44,876 - 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 18:57:44,877 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: schema_validation_case 从 ./custom_testcases/compliance_catalog/core_functionality/schema_validation_case.py
2025-07-11 18:57:44,877 - 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 18:57:44,877 - 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 18:57:44,877 - 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 18:57:44,877 - ddms_compliance_suite.test_case_registry - INFO - 已根据 execution_order (主要) 和类名 (次要) 对 20 个测试用例类进行了排序。
2025-07-11 18:57:44,877 - ddms_compliance_suite.test_case_registry - INFO - 测试用例发现完成。总共注册了 20 个独特的测试用例 (基于ID)。发现并排序了 20 个测试用例类。
2025-07-11 18:57:44,878 - 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 18:57:44,878 - ddms_compliance_suite.test_orchestrator - INFO - LLMService initialized with model: qwen-plus.
2025-07-11 18:57:44,878 - ddms_compliance_suite.test_orchestrator - INFO - LLMService is initialized, but no LLM generation flags (--use-llm-for-*) are enabled.
2025-07-11 18:57:44,878 - ddms_compliance_suite.stage_registry - INFO - 开始从目录发现测试阶段: custom_stages
2025-07-11 18:57:44,878 - ddms_compliance_suite.stage_registry - DEBUG - 成功加载模块: ddms_compliance_suite.stages.keyword_driven_crud_stage 从 custom_stages/keyword_driven_crud_stage.py
2025-07-11 18:57:44,878 - ddms_compliance_suite.stage_registry - DEBUG - 成功加载模块: ddms_compliance_suite.stages.dms_crud_scenario_stage 从 custom_stages/dms_crud_scenario_stage.py
2025-07-11 18:57:44,878 - ddms_compliance_suite.stage_registry - INFO - 成功注册测试阶段: dms_crud_scenario_stage (来自 ddms_compliance_suite.stages.dms_crud_scenario_stage.DmsCrudScenarioStage)
2025-07-11 18:57:44,878 - ddms_compliance_suite.stage_registry - INFO - 测试阶段发现完成。共加载 1 个阶段。发现 0 个错误。
2025-07-11 18:57:44,878 - ddms_compliance_suite.test_orchestrator - INFO - StageRegistry initialized. Loaded 1 stages.
2025-07-11 18:57:44,878 - ddms_compliance_suite.test_orchestrator - INFO - Orchestrator output directory set to: /Users/zpc01/workspace/zzlh/compliance/test_reports/2025-07-11_18-57-44
2025-07-11 18:57:44,878 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,878 - __main__ - INFO - 从DMS服务动态发现运行测试: ./assets/doc/dms/domain.json
2025-07-11 18:57:44,878 - ddms_compliance_suite.test_orchestrator - INFO - TestSummary initialized.
2025-07-11 18:57:44,878 - ddms_compliance_suite.test_orchestrator - INFO - 从DMS动态服务启动测试...
2025-07-11 18:57:44,878 - 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 18:57:44,879 - ddms_compliance_suite.input_parser.parser - INFO - Fetching API list from: http://127.0.0.1:5001/api/schema/manage/schema
2025-07-11 18:57:44,885 - 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 18:57:44,886 - 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 18:57:44,887 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行API测试阶段 (Stages)...
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - INFO - 发现了 1 个已定义的测试阶段: ['dms_crud_scenario_stage']
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - WARNING - 未知的解析规范类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>。将阶段应用于整个规范 (api_group_name=None).
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - INFO - 将针对 1 个API分组评估测试阶段: [None]
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - INFO - 处理测试阶段定义: ID='dms_crud_scenario_stage', Name='DMS Full CRUD Scenario'
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备阶段 'dms_crud_scenario_stage' 的上下文针对API分组: 'Global'
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - DEBUG - For Global context, selected 10 endpoint objects.
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - DEBUG - 为阶段 'dms_crud_scenario_stage' 和分组 'Global' 实例化。API对象数量: 10. 元数据: {'name': 'Global (所有API)', 'description': '适用于规范中的所有API'}
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - DEBUG - 检查阶段 'dms_crud_scenario_stage' 是否适用于API分组 'Global'...
2025-07-11 18:57:44,887 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Found complete CRUD scenario for DMS resource: 'lujing_test'
2025-07-11 18:57:44,887 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Found complete CRUD scenario for DMS resource: 'wb_dr_pro_daily_report'
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'dms_crud_scenario_stage' 适用于API分组 'Global'。开始执行...
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试阶段: ID='dms_crud_scenario_stage', Name='DMS Full CRUD Scenario', API分组='Global'
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - DEBUG - 调用 stage 'dms_crud_scenario_stage' 的 before_stage 钩子。初始上下文: {}
2025-07-11 18:57:44,887 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Setting up before_stage for scenario: ['create', 'list', 'read', 'update', 'delete']
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 开始执行.
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 调用 before_step 钩子. 上下文: {'pk_name': 'description', 'pk_value': 'c3782722-693c-41e0-8f7a-6121c09ab40e', '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 18:57:44,887 - 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 18:57:44,887 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 查找端点定义. Key='CREATE', Group='None'
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 已解析端点 'POST /api/dms/wb_ml/v1/lujing_test'. 准备请求数据.
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,887 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,888 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,888 - 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 18:57:44,888 - 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 18:57:44,888 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,888 - 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 18:57:44,888 - 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 18:57:44,888 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,888 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.888069
2025-07-11 18:57:44,888 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,888 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 应用请求覆盖: {'body': {'data': ['{{stage_context.current_payload}}']}}
2025-07-11 18:57:44,888 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'Step 1: Create Resource'] 解析上下文路径: 'current_payload' 来自模板 '{{stage_context.current_payload}}'
2025-07-11 18:57:44,888 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'Step 1: Create Resource'] 从上下文解析到值 '{'description': 'test-entry-from-scenario'}...' (路径: 'current_payload')
2025-07-11 18:57:44,889 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 发送API请求: POST http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 收到响应. Status: 400. 验证中...
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_orchestrator - WARNING - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 预期状态码为 [200, 201], 实际为 400.
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 执行断言 'validate_response_is_true'
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_orchestrator - WARNING - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 断言 'validate_response_is_true' 失败: Expected response data to be true, but it was 'None'.
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 提取输出到上下文. Map: {}
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 调用 after_step 钩子.
2025-07-11 18:57:44,890 - 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 18:57:44,890 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 执行完毕. 状态: 失败, 耗时: 0.00s
2025-07-11 18:57:44,890 - 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 18:57:44,890 - ddms_compliance_suite.test_orchestrator - DEBUG - 调用 stage 'dms_crud_scenario_stage' 的 after_stage 钩子. 当前阶段结果状态: 失败
2025-07-11 18:57:44,890 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Finished scenario 1/2 for this group.
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'dms_crud_scenario_stage' (API分组: 'Global') 执行完毕. 最终状态: 失败, 耗时: 0.00s
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_orchestrator - INFO - API Test Stage execution processed. Considered 1 (stage_definition x api_group) combinations.
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,890 - 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 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,890 - 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 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,890 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,890 - 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 18:57:44,890 - 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 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - 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 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - 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 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - 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 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - 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 18:57:44,891 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,891 - 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 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - 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 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - 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 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - 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 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - 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 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - 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 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - 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 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - 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 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,892 - 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 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/wb_ml/v1/lujing_test (Create lujing_test)
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,892 - 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 18:57:44,892 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,892 - 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 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,892 - 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 18:57:44,892 - 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 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.892671
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,892 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,892 - 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 18:57:44,893 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,893 - 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 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,893 - 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 18:57:44,893 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,893 - 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 18:57:44,893 - 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 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,893 - 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 18:57:44,893 - 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 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.893971
2025-07-11 18:57:44,893 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,894 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,894 - 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 18:57:44,894 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/wb_ml/v1/lujing_test
2025-07-11 18:57:44,894 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 18:57:44,894 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,894 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 18:57:44,894 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,894 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 18:57:44,894 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,894 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 18:57:44,894 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 18:57:44,894 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,894 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,894 - 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 18:57:44,894 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,894 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,894 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,894 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,894 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,894 - 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 18:57:44,895 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'coord', 'position', 'location'}
2025-07-11 18:57:44,895 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,895 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,895 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,895 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,895 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,895 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,895 - 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 18:57:44,895 - 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 18:57:44,895 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,895 - 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 18:57:44,895 - 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 18:57:44,895 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,895 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.895131
2025-07-11 18:57:44,895 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,895 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,895 - 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 18:57:44,895 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 18:57:44,895 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 18:57:44,896 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,896 - 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 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,896 - 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 18:57:44,896 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,896 - 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 18:57:44,896 - 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 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,896 - 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 18:57:44,896 - 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 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.896599
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,896 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,896 - 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 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,897 - 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 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,897 - 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 18:57:44,897 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,897 - 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 18:57:44,897 - 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 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,897 - 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 18:57:44,897 - 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 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.897636
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,897 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,897 - 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 18:57:44,898 - 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 18:57:44,898 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 18:57:44,898 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,898 - 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 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,898 - 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 18:57:44,898 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,898 - 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 18:57:44,898 - 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 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,898 - 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 18:57:44,898 - 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 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.898778
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,898 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,898 - 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 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,899 - 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 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,899 - 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 18:57:44,899 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-004' (资源集合复数命名检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,899 - 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 18:57:44,899 - 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 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,899 - 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 18:57:44,899 - 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 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.899742
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,899 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,899 - 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: 55' -d '{"data": [{"description": "test-entry-from-scenario"}]}' --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: 55\' -d \'{"data": [{"description": "test-entry-from-scenario"}]}\' --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-11T18:57:44.892671"}]}' --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-11T18:57:44.892671"}]}\' --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-11T18:57:44.893971"}]}' --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-11T18:57:44.893971"}]}\' --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-11T18:57:44.895131"}]}' --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-11T18:57:44.895131"}]}\' --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-11T18:57:44.896599"}]}' --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-11T18:57:44.896599"}]}\' --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-11T18:57:44.897636"}]}' --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-11T18:57:44.897636"}]}\' --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-11T18:57:44.898778"}]}' --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-11T18:57:44.898778"}]}\' --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-11T18:57:44.899742"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-004' 执行失败。
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 失败
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,900 - 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 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,900 - 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 18:57:44,900 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,900 - 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 18:57:44,900 - 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 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,900 - 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 18:57:44,900 - 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 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.900781
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,900 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,900 - 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 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,901 - 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 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,901 - 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 18:57:44,901 - 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 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,901 - 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 18:57:44,901 - 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 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,901 - 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 18:57:44,901 - 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 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.901796
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,901 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,901 - 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 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,902 - 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 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,902 - 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 18:57:44,902 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,902 - 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 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,902 - 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 18:57:44,902 - 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 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,902 - 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 18:57:44,902 - 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 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.902823
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,902 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,902 - 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 18:57:44,903 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 18:57:44,903 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,904 - 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 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,904 - 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 18:57:44,904 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,904 - 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 18:57:44,904 - 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 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,904 - 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 18:57:44,904 - 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 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.904921
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,904 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,904 - 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 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。
2025-07-11 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过
2025-07-11 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,905 - 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 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,905 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,905 - 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 18:57:44,905 - 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 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,905 - 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 18:57:44,905 - 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 18:57:44,905 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,905 - 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 18:57:44,905 - 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 18:57:44,906 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,906 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.906008
2025-07-11 18:57:44,906 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,906 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,906 - 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 18:57:44,906 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 18:57:44,906 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,906 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-002' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,906 - 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 18:57:44,906 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,906 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,906 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,906 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,906 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,906 - 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 18:57:44,907 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'POST /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,907 - 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 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,907 - 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 18:57:44,907 - 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 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,907 - 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 18:57:44,907 - 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 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.907137
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,907 - 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 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,907 - 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 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,907 - 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 18:57:44,907 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS 协议强制性检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,907 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,908 - 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 18:57:44,908 - 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 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,908 - 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 18:57:44,908 - 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 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.908090
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,908 - 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 18:57:44,908 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test' 不是HTTPS。跳过此测试用例的URL修改。
2025-07-11 18:57:44,908 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,908 - 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 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,908 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,908 - 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 18:57:44,909 - 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 18:57:44,909 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 18:57:44,909 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 18:57:44,909 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (查询参数类型不匹配检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,909 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,909 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,909 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,909 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,909 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,909 - 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 18:57:44,909 - 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 18:57:44,909 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,909 - 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 18:57:44,909 - 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 18:57:44,909 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,909 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.909170
2025-07-11 18:57:44,909 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,909 - 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 18:57:44,909 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,909 - 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 18:57:44,909 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,909 - 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 18:57:44,909 - 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 18:57:44,909 - 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 18:57:44,909 - 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 18:57:44,909 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,909 - 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: 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-11T18:57:44.899742"}]}\' --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-11T18:57:44.900781"}]}' --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-11T18:57:44.900781"}]}\' --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-11T18:57:44.901796"}]}' --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-11T18:57:44.901796"}]}\' --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-11T18:57:44.902823"}]}' --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-11T18:57:44.902823"}]}\' --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-11T18:57:44.904921"}]}' --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-11T18:57:44.904921"}]}\' --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-11T18:57:44.906008"}]}' --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-11T18:57:44.906008"}]}\' --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-11T18:57:44.907137"}]}' --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-11T18:57:44.907137"}]}\' --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-11T18:57:44.908090"}]}' --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-11T18:57:44.908090"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,910 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 18:57:44,910 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0007529258728027344
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,910 - 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 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,910 - 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 18:57:44,910 - 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 18:57:44,910 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json
2025-07-11 18:57:44,910 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema...
2025-07-11 18:57:44,910 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string
2025-07-11 18:57:44,910 - 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 18:57:44,910 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (请求体字段类型不匹配检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,910 - 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 18:57:44,910 - 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 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,910 - 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 18:57:44,910 - 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 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.910366
2025-07-11 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,910 - 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 18:57:44,910 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,910 - 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 18:57:44,910 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'.
2025-07-11 18:57:44,910 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345'
2025-07-11 18:57:44,910 - 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 18:57:44,910 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,910 - 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 18:57:44,910 - 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 18:57:44,910 - 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 18:57:44,910 - 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 18:57:44,910 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,910 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:44,911 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0008378028869628906
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,911 - 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 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,911 - 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 18:57:44,911 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 18:57:44,911 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json
2025-07-11 18:57:44,911 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body.
2025-07-11 18:57:44,911 - testcase.TC-ERROR-4002 - DEBUG - 在路径 data.0.record_count 找到范围受限字段。
2025-07-11 18:57:44,911 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Found ranged numeric field in BODY at path: data.0.record_count
2025-07-11 18:57:44,911 - 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 18:57:44,911 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Setting out-of-range value to 10001 (max is 10000).
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (数值参数越界检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,911 - 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 18:57:44,911 - 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 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,911 - 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 18:57:44,911 - 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 18:57:44,911 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,912 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.912003
2025-07-11 18:57:44,912 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,912 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 data.0.record_count (键 'record_count') 处设置值为 '10001'
2025-07-11 18:57:44,912 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Successfully injected out-of-range value into parameters.
2025-07-11 18:57:44,912 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,912 - 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 18:57:44,912 - 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 18:57:44,912 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 18:57:44,912 - 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 18:57:44,912 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,912 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:44,912 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0007319450378417969
2025-07-11 18:57:44,912 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4002' 执行失败。
2025-07-11 18:57:44,912 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 失败
2025-07-11 18:57:44,912 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,912 - 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 18:57:44,912 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,912 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,912 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,912 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,912 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,913 - 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 18:57:44,913 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 18:57:44,913 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 18:57:44,913 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 18:57:44,913 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (非法枚举值检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,913 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,913 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,913 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,913 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,913 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,913 - 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 18:57:44,913 - 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 18:57:44,913 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,913 - 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 18:57:44,913 - 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 18:57:44,913 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,913 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.913606
2025-07-11 18:57:44,913 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,913 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,913 - 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 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,914 - 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 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,914 - 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 18:57:44,914 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['data'], 属性: ['version', 'act', 'data']
2025-07-11 18:57:44,914 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'data'
2025-07-11 18:57:44,914 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data'
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (缺失必填请求体字段检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,914 - 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 18:57:44,914 - 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 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,914 - 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 18:57:44,914 - 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 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.914705
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,914 - 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-11T18:57:44.914705'}]')。
2025-07-11 18:57:44,914 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data'。
2025-07-11 18:57:44,914 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,914 - 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 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,915 - 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 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,915 - 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 18:57:44,915 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 18:57:44,915 - 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 18:57:44,915 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (缺失必填查询参数检查) for endpoint 'POST /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:44,915 - 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 18:57:44,915 - 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 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,915 - 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 18:57:44,915 - 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 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.915752
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,915 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,915 - 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 18:57:44,916 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:44,916 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,916 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,916 - root - INFO - relevant_failed_tcs: []
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/wb_ml/v1/lujing_test' 测试完成,最终状态: 通过
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/wb_ml/v1/lujing_test/1.0.0 (List lujing_test)
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,916 - 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 18:57:44,916 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,916 - 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 18:57:44,916 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,916 - 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 18:57:44,916 - 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 18:57:44,916 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,916 - 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 18:57:44,916 - 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 18:57:44,916 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,916 - 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 18:57:44,916 - 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 18:57:44,916 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'。
2025-07-11 18:57:44,916 - 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 18:57:44,916 - 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 18:57:44,916 - 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 18:57:44,916 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 18:57:44,916 - 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 18:57:44,916 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,916 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,916 - 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 18:57:44,917 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 初始化。
2025-07-11 18:57:44,917 - 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 18:57:44,917 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,917 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,917 - 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 18:57:44,917 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,917 - 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 18:57:44,917 - 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 18:57:44,917 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 18:57:44,917 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,917 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 18:57:44,917 - 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 18:57:44,917 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,917 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,917 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,917 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,917 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,917 - 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 18:57:44,917 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 初始化。
2025-07-11 18:57:44,917 - 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 18:57:44,917 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,917 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,918 - 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 18:57:44,918 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,918 - 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 18:57:44,918 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/wb_ml/v1/lujing_test/1.0.0
2025-07-11 18:57:44,918 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 18:57:44,918 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,918 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 18:57:44,918 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,918 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 18:57:44,918 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,918 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 18:57:44,918 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 18:57:44,918 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,918 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 18:57:44,918 - 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 18:57:44,918 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,918 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,918 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,918 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,919 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,919 - 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 18:57:44,919 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'coord', 'position', 'location'}
2025-07-11 18:57:44,919 - 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 18:57:44,919 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,919 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,919 - 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 18:57:44,919 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,919 - 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 18:57:44,919 - 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-11T18:57:44.915752'}], 'message': "获取 'lujing_test' 列表成功"}
2025-07-11 18:57:44,919 - 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-11T18:57:44.915752'}], 'message': "获取 'lujing_test' 列表成功"}
2025-07-11 18:57:44,919 - testcase.TC-SECURITY-002 - INFO - response_data:[{'description': 'example_string', 'lujing_test_id': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T18:57:44.915752'}]
2025-07-11 18:57:44,919 - testcase.TC-SECURITY-002 - INFO - response_data:{'description': 'example_string', 'lujing_test_id': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T18:57:44.915752'}
2025-07-11 18:57:44,919 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 18:57:44,919 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 18:57:44,919 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,919 - 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 18:57:44,919 - 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 18:57:44,919 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,919 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,919 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,919 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,919 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,919 - 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 18:57:44,919 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 18:57:44,920 - 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 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,920 - 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 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,920 - 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
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-11T18:57:44.909170"}]}' --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-11T18:57:44.909170"}]}\' --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: 193' -d '{"version": 12345, "act": 0, "data": [{"description": "example_string", "lujing_test_id": "example_string", "record_count": 0, "status": "active", "update_date": "2025-07-11T18:57:44.910366"}]}' --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-11T18:57:44.910366"}]}\' --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-11T18:57:44.912003"}]}' --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-11T18:57:44.912003"}]}\' --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-11T18:57:44.913606"}]}' --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-11T18:57:44.913606"}]}\' --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-11T18:57:44.915752"}]}' --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-11T18:57:44.915752"}]}\' --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"
2025-07-11 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 18:57:44,920 - 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 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,920 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,920 - 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 18:57:44,920 - 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 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,920 - 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 18:57:44,920 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,920 - 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 18:57:44,921 - 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 18:57:44,921 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 18:57:44,921 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 18:57:44,921 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-001' 执行失败。
2025-07-11 18:57:44,921 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,921 - 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 18:57:44,921 - 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 18:57:44,921 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,921 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,921 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,921 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,921 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,921 - 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 18:57:44,921 - 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 18:57:44,921 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,921 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,921 - 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 18:57:44,922 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,922 - 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 18:57:44,922 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 18:57:44,922 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,922 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 18:57:44,922 - 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 18:57:44,922 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,922 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,922 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,922 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,922 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,922 - 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 18:57:44,922 - 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 18:57:44,922 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,922 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,922 - 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 18:57:44,922 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,922 - 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 18:57:44,923 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-004' 执行失败。
2025-07-11 18:57:44,923 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 失败
2025-07-11 18:57:44,923 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 18:57:44,923 - 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 18:57:44,923 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,923 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,923 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,923 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,923 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,923 - 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 18:57:44,923 - 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 18:57:44,923 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,923 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,923 - 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 18:57:44,923 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,923 - 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 18:57:44,924 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 18:57:44,924 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,924 - 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 18:57:44,924 - 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 18:57:44,924 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,924 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,924 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,924 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,924 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,924 - 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 18:57:44,924 - 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 18:57:44,924 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,924 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,924 - 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 18:57:44,924 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,924 - 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 18:57:44,925 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 18:57:44,925 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,925 - 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 18:57:44,925 - 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 18:57:44,925 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,925 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,925 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,925 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,925 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,925 - 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 18:57:44,925 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 初始化。
2025-07-11 18:57:44,925 - 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 18:57:44,925 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,925 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,925 - 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 18:57:44,925 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,925 - 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 18:57:44,926 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 18:57:44,926 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 18:57:44,926 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 18:57:44,926 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,926 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 18:57:44,926 - 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 18:57:44,926 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,926 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,926 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,926 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,926 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,926 - 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 18:57:44,926 - 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 18:57:44,926 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,926 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,926 - 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 18:57:44,926 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,926 - 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 18:57:44,927 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-003' 执行失败。
2025-07-11 18:57:44,927 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 失败
2025-07-11 18:57:44,927 - 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 18:57:44,927 - 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 18:57:44,927 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,927 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,927 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,927 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,927 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,927 - 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 18:57:44,927 - 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 18:57:44,927 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,927 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,927 - 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 18:57:44,927 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,927 - 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 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,928 - 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 18:57:44,928 - 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 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,928 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,928 - 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 18:57:44,928 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 初始化。
2025-07-11 18:57:44,928 - 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 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,928 - 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 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,928 - 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 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 18:57:44,928 - 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 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,929 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,929 - 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 18:57:44,929 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 初始化。
2025-07-11 18:57:44,929 - 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 18:57:44,929 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,929 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,929 - 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 18:57:44,929 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,929 - 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 18:57:44,929 - 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 18:57:44,929 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 18:57:44,929 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 18:57:44,929 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,929 - 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 18:57:44,929 - 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 18:57:44,929 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,929 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,929 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,929 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,929 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,929 - 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 18:57:44,929 - 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 18:57:44,929 - 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 18:57:44,929 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 18:57:44,929 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 18:57:44,929 - 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 18:57:44,929 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,929 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,929 - 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 18:57:44,929 - 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 18:57:44,929 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,929 - 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 18:57:44,930 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,930 - 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 18:57:44,930 - 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 18:57:44,930 - 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 18:57:44,930 - 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 18:57:44,930 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,930 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'NoneType'>
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: {'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"
2025-07-11 18:57:44,930 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 18:57:44,930 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0006449222564697266
2025-07-11 18:57:44,930 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 18:57:44,930 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:44,930 - 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 18:57:44,930 - 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 18:57:44,930 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,930 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,930 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,930 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,930 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,930 - 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 18:57:44,930 - 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 18:57:44,930 - 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 18:57:44,930 - testcase.TC-ERROR-4001-BODY - DEBUG - No suitable request body schema found
2025-07-11 18:57:44,930 - 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 18:57:44,930 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Conclusion: No target field identified for request body type mismatch test.
2025-07-11 18:57:44,930 - 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 18:57:44,930 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,930 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,930 - 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 18:57:44,930 - 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 18:57:44,930 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,930 - 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 18:57:44,930 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,930 - 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 18:57:44,930 - 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 18:57:44,930 - 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 18:57:44,930 - 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 18:57:44,930 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,930 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'NoneType'>
2025-07-11 18:57:44,931 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Skipped type mismatch (body) validation: No target field was identified.
2025-07-11 18:57:44,931 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0006871223449707031
2025-07-11 18:57:44,931 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-BODY' 执行成功。
2025-07-11 18:57:44,931 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 通过
2025-07-11 18:57:44,931 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 18:57:44,931 - 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 18:57:44,931 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,931 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,931 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,931 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,931 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,931 - 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 18:57:44,931 - 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 18:57:44,931 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 18:57:44,931 - testcase.TC-ERROR-4002 - DEBUG - No suitable request body schema found
2025-07-11 18:57:44,931 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters.
2025-07-11 18:57:44,931 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters.
2025-07-11 18:57:44,931 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters.
2025-07-11 18:57:44,931 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location.
2025-07-11 18:57:44,931 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint.
2025-07-11 18:57:44,931 - 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 18:57:44,931 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,931 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,931 - 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 18:57:44,931 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,931 - 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 18:57:44,931 - 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 18:57:44,931 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 18:57:44,931 - 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 18:57:44,931 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,931 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'NoneType'>
2025-07-11 18:57:44,932 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0006368160247802734
2025-07-11 18:57:44,932 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。
2025-07-11 18:57:44,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过
2025-07-11 18:57:44,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0'
2025-07-11 18:57:44,932 - 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 18:57:44,932 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,932 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,932 - 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 18:57:44,932 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 18:57:44,932 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 18:57:44,932 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 18:57:44,932 - 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 18:57:44,932 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,932 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,932 - 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 18:57:44,932 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,932 - 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 18:57:44,933 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 18:57:44,933 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 18:57:44,933 - 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 18:57:44,933 - 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 18:57:44,933 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,933 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,933 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,933 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,933 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,933 - 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 18:57:44,933 - testcase.TC-ERROR-4003-BODY - INFO - 此端点规范中未定义或找到请求体 schema通过基类方法
2025-07-11 18:57:44,933 - 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 18:57:44,933 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,933 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,933 - 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 18:57:44,933 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,933 - 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 18:57:44,934 - testcase.TC-ERROR-4003-BODY - INFO - 由于未识别到可移除的必填请求体字段,跳过此测试用例的验证。
2025-07-11 18:57:44,934 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-BODY' 执行成功。
2025-07-11 18:57:44,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 通过
2025-07-11 18:57:44,934 - 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 18:57:44,934 - 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 18:57:44,934 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,934 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,934 - 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 18:57:44,934 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 18:57:44,934 - 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 18:57:44,934 - 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 18:57:44,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_lujing_test': application/json
2025-07-11 18:57:44,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_lujing_test': application/json
2025-07-11 18:57:44,934 - 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 18:57:44,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,934 - 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 18:57:44,935 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 18:57:44,935 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 18:57:44,935 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:44,935 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,935 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,935 - root - INFO - relevant_failed_tcs: []
2025-07-11 18:57:44,935 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/wb_ml/v1/lujing_test/1.0.0' 测试完成,最终状态: 通过
2025-07-11 18:57:44,935 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id} (Read lujing_test)
2025-07-11 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - 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 18:57:44,935 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,935 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,935 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('id') 的 schema...
2025-07-11 18:57:44,935 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,935 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,935 - 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 18:57:44,935 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}' 初始化。
2025-07-11 18:57:44,935 - 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 18:57:44,935 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'read_lujing_test': {'id': 'param_id'}
2025-07-11 18:57:44,935 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'read_lujing_test': None
2025-07-11 18:57:44,935 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'read_lujing_test': application/json
2025-07-11 18:57:44,935 - 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 18:57:44,935 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'id': 'param_id'}
2025-07-11 18:57:44,935 - 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 18:57:44,936 - 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 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-STATUS-001' 执行失败。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-HEADER-001' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-SECURITY-002' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-LLM-COMPLIANCE-001' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-001' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-DMS-PAGINATION-001' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-004' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-002' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-DMS-CORE-SCHEMA-001' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-CORE-FUNC-001' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-003' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-DMS-URL-VERSION-001' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-CORE-FUNC-002' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-SECURITY-001' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4001-QUERY' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4001-BODY' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4002' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4006' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4003-BODY' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - 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 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4003-QUERY' 被跳过。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 跳过
2025-07-11 18:57:44,936 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,936 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,936 - root - INFO - relevant_failed_tcs: [<ddms_compliance_suite.test_orchestrator.ExecutedTestCaseResult object at 0x10352eae0>]
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/wb_ml/v1/lujing_test/1.0.0/{id}' 测试完成,最终状态: 失败
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: PUT /api/dms/wb_ml/v1/lujing_test (Update lujing_test)
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,936 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'PUT /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,937 - 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 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,937 - 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 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,937 - 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 18:57:44,937 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'PUT /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,937 - 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 18:57:44,937 - 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 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,937 - 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 18:57:44,937 - 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 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.937246
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,937 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,937 - 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 18:57:44,938 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,938 - 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 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,938 - 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 18:57:44,938 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'PUT /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,938 - 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 18:57:44,938 - 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 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,938 - 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 18:57:44,938 - 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 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.938274
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,938 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,938 - 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 18:57:44,938 - RequiredHeadersSchemaCheck - INFO - API端点: PUT /api/dms/wb_ml/v1/lujing_test
2025-07-11 18:57:44,938 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 18:57:44,938 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,939 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 18:57:44,939 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,939 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 18:57:44,939 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,939 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,939 - 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 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,939 - 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 18:57:44,939 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'coord', 'position', 'location'}
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,939 - 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 18:57:44,939 - 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 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,939 - 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 18:57:44,939 - 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 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.939302
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,939 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,939 - 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 18:57:44,940 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 18:57:44,940 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 18:57:44,940 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,940 - 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 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,940 - 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 18:57:44,940 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,940 - 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 18:57:44,940 - 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 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,940 - 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 18:57:44,940 - 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 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.940349
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,940 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,940 - 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 -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-11T18:57:44.937246"}]}' --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-11T18:57:44.937246"}]}\' --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-11T18:57:44.938274"}]}' --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-11T18:57:44.938274"}]}\' --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-11T18:57:44.939302"}]}' --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-11T18:57:44.939302"}]}\' --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-11T18:57:44.940349"}]}' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,941 - 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 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,941 - 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 18:57:44,941 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,941 - 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 18:57:44,941 - 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 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,941 - 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 18:57:44,941 - 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 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.941289
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,941 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,941 - 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 18:57:44,941 - 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 18:57:44,941 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 18:57:44,942 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,942 - 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 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,942 - 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 18:57:44,942 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,942 - 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 18:57:44,942 - 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 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,942 - 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 18:57:44,942 - 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 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.942224
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,942 - 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 18:57:44,942 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,943 - 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 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,943 - 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 18:57:44,943 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-004' (资源集合复数命名检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,943 - 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 18:57:44,943 - 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 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,943 - 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 18:57:44,943 - 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 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.943255
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,943 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,943 - 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 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-004' 执行成功。
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 通过
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,944 - 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 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,944 - 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 18:57:44,944 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,944 - 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 18:57:44,944 - 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 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,944 - 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 18:57:44,944 - 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 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.944255
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,944 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,944 - 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 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,945 - 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 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,945 - 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 18:57:44,945 - 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 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,945 - 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 18:57:44,945 - 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 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,945 - 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 18:57:44,945 - 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 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.945356
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,945 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,945 - 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 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,946 - 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 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,946 - 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 18:57:44,946 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'PUT /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,946 - 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 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,946 - 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 18:57:44,946 - 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 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,946 - 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 18:57:44,946 - 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 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.946323
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,946 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,946 - 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 18:57:44,947 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 18:57:44,947 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,947 - 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 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,947 - 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 18:57:44,947 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,947 - 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 18:57:44,947 - 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 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,947 - 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 18:57:44,947 - 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 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.947295
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,947 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,947 - 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 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,948 - 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 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,948 - 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 18:57:44,948 - 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 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,948 - 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 18:57:44,948 - 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 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,948 - 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 18:57:44,948 - 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 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.948436
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,948 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,948 - 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-11T18:57:44.940349"}]}\' --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-11T18:57:44.941289"}]}' --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-11T18:57:44.941289"}]}\' --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-11T18:57:44.942224"}]}' --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-11T18:57:44.942224"}]}\' --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-11T18:57:44.943255"}]}' --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-11T18:57:44.943255"}]}\' --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-11T18:57:44.944255"}]}' --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-11T18:57:44.944255"}]}\' --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-11T18:57:44.945356"}]}' --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-11T18:57:44.945356"}]}\' --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-11T18:57:44.946323"}]}' --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-11T18:57:44.946323"}]}\' --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-11T18:57:44.947295"}]}' --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-11T18:57:44.947295"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-002' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,949 - 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 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,949 - 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 18:57:44,949 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'PUT /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,949 - 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 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,949 - 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 18:57:44,949 - 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 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,949 - 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 18:57:44,949 - 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 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.949567
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,949 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,949 - 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 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,950 - 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 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,950 - 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 18:57:44,950 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'PUT /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS 协议强制性检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,950 - 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 18:57:44,950 - 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 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,950 - 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 18:57:44,950 - 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 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.950599
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,950 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,950 - 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 18:57:44,950 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test' 不是HTTPS。跳过此测试用例的URL修改。
2025-07-11 18:57:44,951 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,951 - 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 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,951 - 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 18:57:44,951 - 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 18:57:44,951 - 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 18:57:44,951 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 18:57:44,951 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (查询参数类型不匹配检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,951 - 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 18:57:44,951 - 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 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,951 - 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 18:57:44,951 - 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 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.951607
2025-07-11 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,951 - 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 18:57:44,951 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,951 - 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 18:57:44,951 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,951 - 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 18:57:44,951 - 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 18:57:44,951 - 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 18:57:44,951 - 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 18:57:44,951 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,951 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:44,952 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 18:57:44,952 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0006699562072753906
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,952 - 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 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,952 - 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 18:57:44,952 - 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 18:57:44,952 - 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 18:57:44,952 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json
2025-07-11 18:57:44,952 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema...
2025-07-11 18:57:44,952 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string
2025-07-11 18:57:44,952 - 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 18:57:44,952 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (请求体字段类型不匹配检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,952 - 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 18:57:44,952 - 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 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,952 - 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 18:57:44,952 - 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 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.952712
2025-07-11 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,952 - 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 18:57:44,952 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,952 - 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 18:57:44,952 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'.
2025-07-11 18:57:44,952 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345'
2025-07-11 18:57:44,952 - 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 18:57:44,952 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,952 - 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 18:57:44,952 - 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 18:57:44,952 - 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 18:57:44,952 - 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 18:57:44,952 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,952 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:44,953 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0006530284881591797
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,953 - 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 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,953 - 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 18:57:44,953 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: PUT /api/dms/wb_ml/v1/lujing_test
2025-07-11 18:57:44,953 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 18:57:44,953 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json
2025-07-11 18:57:44,953 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body.
2025-07-11 18:57:44,953 - testcase.TC-ERROR-4002 - DEBUG - 在路径 data.0.record_count 找到范围受限字段。
2025-07-11 18:57:44,953 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Found ranged numeric field in BODY at path: data.0.record_count
2025-07-11 18:57:44,953 - 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 18:57:44,953 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Setting out-of-range value to 10001 (max is 10000).
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (数值参数越界检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,953 - 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 18:57:44,953 - 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 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,953 - 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 18:57:44,953 - 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 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.953838
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,953 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 data.0.record_count (键 'record_count') 处设置值为 '10001'
2025-07-11 18:57:44,953 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Successfully injected out-of-range value into parameters.
2025-07-11 18:57:44,953 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,953 - 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 18:57:44,953 - 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 18:57:44,953 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 18:57:44,953 - 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 18:57:44,953 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,953 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:44,954 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0006530284881591797
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4002' 执行失败。
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 失败
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,954 - 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 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,954 - 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 18:57:44,954 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 18:57:44,954 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 18:57:44,954 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (非法枚举值检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,954 - 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 18:57:44,954 - 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 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,954 - 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 18:57:44,954 - 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 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.954880
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,954 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,954 - 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 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,955 - 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 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,955 - 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 18:57:44,955 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['data'], 属性: ['version', 'act', 'data']
2025-07-11 18:57:44,955 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'data'
2025-07-11 18:57:44,955 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data'
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (缺失必填请求体字段检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,955 - 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 18:57:44,955 - 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 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,955 - 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 18:57:44,955 - 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 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.955852
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,955 - 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-11T18:57:44.955852'}]')。
2025-07-11 18:57:44,955 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data'。
2025-07-11 18:57:44,955 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,955 - 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 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,956 - 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 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,956 - 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 18:57:44,956 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 18:57:44,956 - 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 18:57:44,956 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (缺失必填查询参数检查) for endpoint 'PUT /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_lujing_test': application/json
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_lujing_test': application/json
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 object 类型数据 for (context: update_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 使用 schema 中的 'example' 值 for (context: update_lujing_test_body.act): 0
2025-07-11 18:57:44,956 - 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 18:57:44,956 - 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 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,956 - 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 18:57:44,956 - 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 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('') for (context: update_lujing_test_body.data[0].status): active
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - [update_lujing_test] 生成 string 类型数据 ('date-time') for (context: update_lujing_test_body.data[0].update_date): 2025-07-11T18:57:44.956832
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,956 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,956 - 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-11T18:57:44.948436"}]}' --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-11T18:57:44.948436"}]}\' --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-11T18:57:44.949567"}]}' --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-11T18:57:44.949567"}]}\' --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-11T18:57:44.950599"}]}' --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-11T18:57:44.950599"}]}\' --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-11T18:57:44.951607"}]}' --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-11T18:57:44.951607"}]}\' --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-11T18:57:44.952712"}]}' --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-11T18:57:44.952712"}]}\' --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-11T18:57:44.953838"}]}' --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-11T18:57:44.953838"}]}\' --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-11T18:57:44.954880"}]}' --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-11T18:57:44.954880"}]}\' --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'
2025-07-11 18:57:44,957 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:44,957 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,957 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,957 - root - INFO - relevant_failed_tcs: []
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/wb_ml/v1/lujing_test' 测试完成,最终状态: 通过
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: DELETE /api/dms/wb_ml/v1/lujing_test (Delete lujing_test)
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'DELETE /api/dms/wb_ml/v1/lujing_test'。
2025-07-11 18:57:44,957 - 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 18:57:44,957 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,957 - 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 18:57:44,957 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,957 - 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 18:57:44,957 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,957 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,957 - 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 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,958 - 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 18:57:44,958 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,958 - 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 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,958 - 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 18:57:44,958 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,958 - 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 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,958 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,958 - 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 18:57:44,959 - RequiredHeadersSchemaCheck - INFO - API端点: DELETE /api/dms/wb_ml/v1/lujing_test
2025-07-11 18:57:44,959 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 18:57:44,959 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,959 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 18:57:44,959 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,959 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 18:57:44,959 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,959 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,959 - 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 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,959 - 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 18:57:44,959 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'coord', 'position', 'location'}
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,959 - 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 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,959 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,959 - 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 18:57:44,960 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 404, 'data': False, 'message': '未找到要删除的资源'}
2025-07-11 18:57:44,960 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 404, 'data': False, 'message': '未找到要删除的资源'}
2025-07-11 18:57:44,960 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,960 - 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 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,960 - 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 18:57:44,960 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,960 - 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 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,960 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,960 - 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 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,961 - 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 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,961 - 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 18:57:44,961 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,961 - 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 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,961 - 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 18:57:44,962 - 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 18:57:44,962 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 18:57:44,962 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,962 - 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 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,962 - 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 18:57:44,962 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,962 - 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 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,962 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,962 - 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 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,963 - 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 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,963 - 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 18:57:44,963 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-004' (资源集合复数命名检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,963 - 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 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,963 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,963 - 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 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-004' 执行成功。
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 通过
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,964 - 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 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,964 - 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 18:57:44,964 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,964 - 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 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,964 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,964 - 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 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,965 - 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 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,965 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,965 - 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 18:57:44,965 - 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 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,965 - 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 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,965 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,965 - 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-11T18:57:44.956832"}]}' --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-11T18:57:44.956832"}]}\' --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'
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
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,966 - 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 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,966 - 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 18:57:44,966 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,966 - 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 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,966 - 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 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,966 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,966 - 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 18:57:44,967 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 18:57:44,967 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,967 - 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 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,967 - 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 18:57:44,967 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,967 - 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 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,967 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,967 - 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 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。
2025-07-11 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过
2025-07-11 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,968 - 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 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,968 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,968 - 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 18:57:44,968 - 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 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,968 - 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 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,968 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,968 - 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 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-002' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,969 - 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 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,969 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,969 - 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 18:57:44,969 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,969 - 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 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,969 - 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 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,969 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,969 - 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 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,970 - 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 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,970 - 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 18:57:44,970 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 初始化。
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS 协议强制性检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,970 - 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 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,970 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,970 - 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 18:57:44,970 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test' 不是HTTPS。跳过此测试用例的URL修改。
2025-07-11 18:57:44,971 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,971 - 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 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,971 - 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 18:57:44,971 - 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 18:57:44,971 - 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 18:57:44,971 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 18:57:44,971 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (查询参数类型不匹配检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,971 - 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 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,971 - 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 18:57:44,971 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,971 - 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 18:57:44,971 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,971 - 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 18:57:44,971 - 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 18:57:44,971 - 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 18:57:44,971 - 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 18:57:44,971 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,971 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:44,972 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 18:57:44,972 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0006310939788818359
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,972 - 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 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,972 - 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 18:57:44,972 - 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 18:57:44,972 - 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 18:57:44,972 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json
2025-07-11 18:57:44,972 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema...
2025-07-11 18:57:44,972 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string
2025-07-11 18:57:44,972 - 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 18:57:44,972 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (请求体字段类型不匹配检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,972 - 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 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,972 - 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 18:57:44,972 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,972 - 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 18:57:44,972 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'.
2025-07-11 18:57:44,972 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345'
2025-07-11 18:57:44,972 - 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 18:57:44,972 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,972 - 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 18:57:44,972 - 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 18:57:44,972 - 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 18:57:44,972 - 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 18:57:44,972 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,972 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:44,973 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0006258487701416016
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,973 - 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 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,973 - 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 18:57:44,973 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: DELETE /api/dms/wb_ml/v1/lujing_test
2025-07-11 18:57:44,973 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 18:57:44,973 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json
2025-07-11 18:57:44,973 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body.
2025-07-11 18:57:44,973 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters.
2025-07-11 18:57:44,973 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters.
2025-07-11 18:57:44,973 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters.
2025-07-11 18:57:44,973 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location.
2025-07-11 18:57:44,973 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint.
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (数值参数越界检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,973 - 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 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,973 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,973 - 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 18:57:44,973 - 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 18:57:44,973 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 18:57:44,973 - 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 18:57:44,973 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,973 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:44,974 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0006501674652099609
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,974 - 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 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,974 - 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 18:57:44,974 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 18:57:44,974 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 18:57:44,974 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (非法枚举值检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,974 - 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 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,974 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,974 - 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 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,975 - 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 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,975 - 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 18:57:44,975 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['data'], 属性: ['version', 'data']
2025-07-11 18:57:44,975 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'data'
2025-07-11 18:57:44,975 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data'
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (缺失必填请求体字段检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,975 - 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 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,975 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'data' 成功移除字段 'data' (原值: '[{'description': 'example_string'}]')。
2025-07-11 18:57:44,975 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data'。
2025-07-11 18:57:44,975 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,975 - 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: 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
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,976 - 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 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,976 - 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 18:57:44,976 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 18:57:44,976 - 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 18:57:44,976 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (缺失必填查询参数检查) for endpoint 'DELETE /api/dms/wb_ml/v1/lujing_test'
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_lujing_test': application/json
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_lujing_test': application/json
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body). Properties: ['version', 'data']
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 使用 schema 中的 'example' 值 for (context: delete_lujing_test_body.version): 1.0.0
2025-07-11 18:57:44,976 - 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 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 object 类型数据 for (context: delete_lujing_test_body.data[0]). Properties: ['description']
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete_lujing_test] 生成 string 类型数据 ('') for (context: delete_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:44,976 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,976 - 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 18:57:44,977 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:44,977 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,977 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,977 - root - INFO - relevant_failed_tcs: []
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/wb_ml/v1/lujing_test' 测试完成,最终状态: 通过
2025-07-11 18:57:44,977 - 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 18:57:44,977 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,977 - 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 18:57:44,977 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,977 - 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 18:57:44,977 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,977 - 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 18:57:44,977 - 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 18:57:44,977 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,977 - 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 18:57:44,977 - 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 18:57:44,977 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,977 - 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 18:57:44,977 - 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 18:57:44,977 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:44,977 - 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 18:57:44,977 - 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 18:57:44,977 - 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 18:57:44,977 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:44,977 - 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 18:57:44,977 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,977 - 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 18:57:44,977 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:44,977 - 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 18:57:44,977 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,977 - 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 18:57:44,977 - 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 18:57:44,977 - 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 18:57:44,977 - 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 18:57:44,977 - 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 18:57:44,977 - 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 18:57:44,977 - 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 18:57:44,977 - 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 18:57:44,977 - 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-11T18:57:44.977510
2025-07-11 18:57:44,977 - 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 18:57:44,977 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,977 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,977 - 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 18:57:44,978 - 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 18:57:44,978 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 18:57:44,978 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,978 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:44,978 - 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 18:57:44,978 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,978 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,978 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,978 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,978 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,978 - 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 18:57:44,978 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:44,978 - 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 18:57:44,978 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,978 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,978 - 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 18:57:44,978 - 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 18:57:44,978 - 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 18:57:44,978 - 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 18:57:44,978 - 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 18:57:44,978 - 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 18:57:44,978 - 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 18:57:44,978 - 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 18:57:44,978 - 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-11T18:57:44.978653
2025-07-11 18:57:44,978 - 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 18:57:44,978 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,978 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,978 - 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 18:57:44,979 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 18:57:44,979 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 18:57:44,979 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,979 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 18:57:44,979 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,979 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 18:57:44,979 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,979 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 18:57:44,979 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 18:57:44,979 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,979 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:44,979 - 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 18:57:44,979 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,979 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,979 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,979 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,979 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,979 - 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 18:57:44,979 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'coord', 'position', 'location'}
2025-07-11 18:57:44,979 - 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 18:57:44,979 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,979 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,979 - 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 18:57:44,979 - 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 18:57:44,979 - 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 18:57:44,979 - 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 18:57:44,979 - 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 18:57:44,979 - 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 18:57:44,979 - 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 18:57:44,979 - 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 18:57:44,979 - 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-11T18:57:44.979718
2025-07-11 18:57:44,979 - 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 18:57:44,979 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,979 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,979 - 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 18:57:44,980 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 18:57:44,980 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 18:57:44,980 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 18:57:44,980 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 18:57:44,980 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,980 - 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 18:57:44,980 - 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 18:57:44,980 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,980 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,980 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,980 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,980 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,980 - 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 18:57:44,980 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 18:57:44,980 - 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 18:57:44,980 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,980 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,980 - 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 18:57:44,980 - 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 18:57:44,980 - 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 18:57:44,980 - 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 18:57:44,980 - 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 18:57:44,980 - 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 18:57:44,980 - 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 18:57:44,980 - 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 18:57:44,980 - 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-11T18:57:44.980783
2025-07-11 18:57:44,980 - 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 18:57:44,980 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,980 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,980 - 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 18:57:44,981 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 18:57:44,981 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,981 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:44,981 - 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 18:57:44,981 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,981 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,981 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,981 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,981 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,981 - 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 18:57:44,981 - 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 18:57:44,981 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,981 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,981 - 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 18:57:44,981 - 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 18:57:44,981 - 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 18:57:44,981 - 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 18:57:44,981 - 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 18:57:44,981 - 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 18:57:44,981 - 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 18:57:44,981 - 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 18:57:44,981 - 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-11T18:57:44.981767
2025-07-11 18:57:44,981 - 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 18:57:44,981 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,981 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,981 - 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 18:57:44,982 - 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 18:57:44,982 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 18:57:44,982 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 18:57:44,982 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。
2025-07-11 18:57:44,982 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,982 - 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 18:57:44,982 - 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 18:57:44,982 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,982 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,982 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,982 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,982 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,982 - 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 18:57:44,982 - 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 18:57:44,982 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,982 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,982 - 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 18:57:44,982 - 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 18:57:44,982 - 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 18:57:44,982 - 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 18:57:44,982 - 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 18:57:44,982 - 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 18:57:44,982 - 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 18:57:44,982 - 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 18:57:44,982 - 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-11T18:57:44.982732
2025-07-11 18:57:44,982 - 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 18:57:44,982 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,982 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,982 - 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 18:57:44,983 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 18:57:44,983 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,983 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:44,983 - 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 18:57:44,983 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,983 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,983 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,983 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,983 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,983 - 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 18:57:44,983 - 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 18:57:44,983 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,983 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,983 - 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 18:57:44,983 - 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 18:57:44,983 - 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 18:57:44,983 - 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 18:57:44,983 - 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 18:57:44,983 - 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 18:57:44,983 - 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 18:57:44,983 - 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 18:57:44,983 - 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-11T18:57:44.983732
2025-07-11 18:57:44,983 - 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 18:57:44,983 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,983 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,983 - 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: 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
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-11T18:57:44.977510", "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-11T18:57:44.977510", "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-11T18:57:44.978653", "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-11T18:57:44.978653", "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-11T18:57:44.979718", "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-11T18:57:44.979718", "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-11T18:57:44.980783", "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-11T18:57:44.980783", "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-11T18:57:44.981767", "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-11T18:57:44.981767", "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-11T18:57:44.982732", "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-11T18:57:44.982732", "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 18:57:44,984 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-004' 执行失败。
2025-07-11 18:57:44,984 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 失败
2025-07-11 18:57:44,984 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:44,984 - 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 18:57:44,984 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,984 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,984 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,984 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,984 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,984 - 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 18:57:44,984 - 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 18:57:44,984 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,984 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,984 - 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 18:57:44,984 - 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 18:57:44,984 - 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 18:57:44,984 - 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 18:57:44,984 - 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 18:57:44,984 - 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 18:57:44,984 - 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 18:57:44,984 - 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 18:57:44,984 - 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-11T18:57:44.984770
2025-07-11 18:57:44,984 - 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 18:57:44,984 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,984 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,984 - 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 18:57:44,985 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 18:57:44,985 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,985 - 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 18:57:44,985 - 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 18:57:44,985 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,985 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,985 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,985 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,985 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,985 - 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 18:57:44,985 - 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 18:57:44,985 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,985 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,985 - 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 18:57:44,985 - 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 18:57:44,985 - 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 18:57:44,985 - 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 18:57:44,985 - 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 18:57:44,985 - 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 18:57:44,985 - 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 18:57:44,985 - 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 18:57:44,985 - 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-11T18:57:44.985762
2025-07-11 18:57:44,985 - 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 18:57:44,985 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,985 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,985 - 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 18:57:44,986 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 18:57:44,986 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,986 - 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 18:57:44,986 - 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 18:57:44,986 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,986 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,986 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,986 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,986 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,986 - 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 18:57:44,986 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:44,986 - 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 18:57:44,986 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,986 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,986 - 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 18:57:44,986 - 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 18:57:44,986 - 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 18:57:44,986 - 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 18:57:44,986 - 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 18:57:44,986 - 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 18:57:44,986 - 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 18:57:44,986 - 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 18:57:44,986 - 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-11T18:57:44.986728
2025-07-11 18:57:44,986 - 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 18:57:44,986 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,986 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,986 - 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 18:57:44,987 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 18:57:44,987 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 18:57:44,987 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 18:57:44,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:44,987 - 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 18:57:44,987 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,987 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,987 - 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 18:57:44,987 - 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 18:57:44,987 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,987 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,987 - 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 18:57:44,987 - 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 18:57:44,987 - 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 18:57:44,987 - 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 18:57:44,987 - 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 18:57:44,987 - 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 18:57:44,987 - 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 18:57:44,987 - 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 18:57:44,987 - 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-11T18:57:44.987723
2025-07-11 18:57:44,987 - 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 18:57:44,987 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,987 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,987 - 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 18:57:44,988 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。
2025-07-11 18:57:44,988 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过
2025-07-11 18:57:44,988 - 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 18:57:44,988 - 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 18:57:44,988 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,988 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,988 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,988 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,988 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,988 - 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 18:57:44,988 - 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 18:57:44,988 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,988 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,988 - 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 18:57:44,988 - 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 18:57:44,988 - 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 18:57:44,988 - 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 18:57:44,988 - 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 18:57:44,988 - 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 18:57:44,988 - 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 18:57:44,988 - 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 18:57:44,988 - 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-11T18:57:44.988633
2025-07-11 18:57:44,988 - 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 18:57:44,988 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,988 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,988 - 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 18:57:44,989 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 18:57:44,989 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,989 - 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 18:57:44,989 - 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 18:57:44,989 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,989 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,989 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,989 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,989 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,989 - 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 18:57:44,989 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:44,989 - 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 18:57:44,989 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,989 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,989 - 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 18:57:44,989 - 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 18:57:44,989 - 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 18:57:44,989 - 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 18:57:44,989 - 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 18:57:44,989 - 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 18:57:44,989 - 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 18:57:44,989 - 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 18:57:44,989 - 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-11T18:57:44.989583
2025-07-11 18:57:44,989 - 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 18:57:44,989 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,989 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,989 - 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 18:57:44,990 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 18:57:44,990 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 18:57:44,990 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:44,990 - 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 18:57:44,990 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,990 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,990 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,990 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,990 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,990 - 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 18:57:44,990 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:44,990 - 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 18:57:44,990 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,990 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,990 - 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 18:57:44,990 - 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 18:57:44,990 - 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 18:57:44,990 - 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 18:57:44,990 - 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 18:57:44,990 - 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 18:57:44,990 - 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 18:57:44,990 - 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 18:57:44,990 - 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-11T18:57:44.990573
2025-07-11 18:57:44,990 - 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 18:57:44,990 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,990 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,990 - 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 18:57:44,990 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:5001/api/dms/wb_dr/v1/wb_dr_pro_daily_report' 不是HTTPS。跳过此测试用例的URL修改。
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-11T18:57:44.983732", "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-11T18:57:44.983732", "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-11T18:57:44.984770", "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-11T18:57:44.984770", "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-11T18:57:44.985762", "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-11T18:57:44.985762", "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-11T18:57:44.986728", "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-11T18:57:44.986728", "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-11T18:57:44.987723", "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-11T18:57:44.987723", "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-11T18:57:44.988633", "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-11T18:57:44.988633", "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-11T18:57:44.989583", "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-11T18:57:44.989583", "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-11T18:57:44.990573", "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 18:57:44,991 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 18:57:44,991 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 18:57:44,991 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,991 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,991 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,991 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,991 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 18:57:44,991 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 18:57:44,991 - 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 18:57:44,991 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,991 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - 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-11T18:57:44.991641
2025-07-11 18:57:44,991 - 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 18:57:44,991 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,991 - 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 18:57:44,991 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,991 - 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 18:57:44,991 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - 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 18:57:44,991 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,991 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:44,992 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 18:57:44,992 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0006771087646484375
2025-07-11 18:57:44,992 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 18:57:44,992 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,992 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,992 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,992 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,992 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json
2025-07-11 18:57:44,992 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema...
2025-07-11 18:57:44,992 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string
2025-07-11 18:57:44,992 - 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 18:57:44,992 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string
2025-07-11 18:57:44,992 - 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 18:57:44,992 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,992 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - 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-11T18:57:44.992709
2025-07-11 18:57:44,992 - 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 18:57:44,992 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,992 - 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 18:57:44,992 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,992 - 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 18:57:44,992 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'.
2025-07-11 18:57:44,992 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345'
2025-07-11 18:57:44,992 - 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 18:57:44,992 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - 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 18:57:44,992 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,992 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:44,993 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0006499290466308594
2025-07-11 18:57:44,993 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。
2025-07-11 18:57:44,993 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败
2025-07-11 18:57:44,993 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:44,993 - 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 18:57:44,993 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,993 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,993 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,993 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,993 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,993 - 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 18:57:44,993 - 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 18:57:44,993 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 18:57:44,993 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json
2025-07-11 18:57:44,993 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body.
2025-07-11 18:57:44,993 - testcase.TC-ERROR-4002 - DEBUG - 在路径 data.0.record_count 找到范围受限字段。
2025-07-11 18:57:44,993 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Found ranged numeric field in BODY at path: data.0.record_count
2025-07-11 18:57:44,993 - 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 18:57:44,993 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Setting out-of-range value to 10001 (max is 10000).
2025-07-11 18:57:44,993 - 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 18:57:44,993 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,993 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,993 - 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 18:57:44,993 - 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 18:57:44,993 - 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 18:57:44,993 - 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 18:57:44,993 - 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 18:57:44,993 - 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 18:57:44,993 - 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 18:57:44,993 - 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 18:57:44,993 - 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-11T18:57:44.993812
2025-07-11 18:57:44,993 - 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 18:57:44,993 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,993 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 data.0.record_count (键 'record_count') 处设置值为 '10001'
2025-07-11 18:57:44,993 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Successfully injected out-of-range value into parameters.
2025-07-11 18:57:44,993 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,993 - 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 18:57:44,993 - 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 18:57:44,993 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 18:57:44,993 - 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 18:57:44,993 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:44,993 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:44,994 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0006861686706542969
2025-07-11 18:57:44,994 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4002' 执行失败。
2025-07-11 18:57:44,994 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 失败
2025-07-11 18:57:44,994 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:44,994 - 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 18:57:44,994 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,994 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,994 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,994 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,994 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,994 - 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 18:57:44,994 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 18:57:44,994 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 18:57:44,994 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 18:57:44,994 - 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 18:57:44,994 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,994 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,994 - 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 18:57:44,994 - 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 18:57:44,994 - 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 18:57:44,994 - 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 18:57:44,994 - 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 18:57:44,994 - 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 18:57:44,994 - 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 18:57:44,994 - 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 18:57:44,994 - 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-11T18:57:44.994895
2025-07-11 18:57:44,994 - 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 18:57:44,994 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,994 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,994 - 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 18:57:44,995 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 18:57:44,995 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 18:57:44,995 - 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 18:57:44,995 - 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 18:57:44,995 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,995 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,995 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,995 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,995 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,995 - 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 18:57:44,995 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['data'], 属性: ['version', 'act', 'data']
2025-07-11 18:57:44,995 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'data'
2025-07-11 18:57:44,995 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data'
2025-07-11 18:57:44,995 - 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 18:57:44,995 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,995 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,995 - 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 18:57:44,995 - 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 18:57:44,995 - 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 18:57:44,995 - 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 18:57:44,995 - 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 18:57:44,995 - 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 18:57:44,995 - 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 18:57:44,995 - 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 18:57:44,995 - 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-11T18:57:44.995899
2025-07-11 18:57:44,995 - 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 18:57:44,995 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,995 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'data' 成功移除字段 'data' (原值: '[{'description': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T18:57:44.995899', 'wb_dr_pro_daily_report_id': 'example_string'}]')。
2025-07-11 18:57:44,995 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data'。
2025-07-11 18:57:44,995 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,995 - 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 18:57:44,996 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。
2025-07-11 18:57:44,996 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败
2025-07-11 18:57:44,996 - 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 18:57:44,996 - 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 18:57:44,996 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,996 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,996 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,996 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,996 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,996 - 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 18:57:44,996 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 18:57:44,996 - 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 18:57:44,996 - 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 18:57:44,996 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,996 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,996 - 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 18:57:44,996 - 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 18:57:44,996 - 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 18:57:44,996 - 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 18:57:44,996 - 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 18:57:44,996 - 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 18:57:44,996 - 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 18:57:44,996 - 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 18:57:44,996 - 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-11T18:57:44.996881
2025-07-11 18:57:44,996 - 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 18:57:44,996 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:44,996 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,996 - 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 18:57:44,997 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 18:57:44,997 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 18:57:44,997 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:44,997 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,997 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:44,997 - root - INFO - relevant_failed_tcs: []
2025-07-11 18:57:44,997 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 测试完成,最终状态: 通过
2025-07-11 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,997 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,997 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,997 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,997 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - 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 18:57:44,997 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,997 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,997 - 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 18:57:44,997 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,997 - 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 18:57:44,998 - 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 18:57:44,998 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 18:57:44,998 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 18:57:44,998 - 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 18:57:44,998 - 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 18:57:44,998 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,998 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,998 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,998 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,998 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,998 - 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 18:57:44,998 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0' 初始化。
2025-07-11 18:57:44,998 - 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 18:57:44,998 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,998 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,998 - 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 18:57:44,998 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,998 - 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 18:57:44,999 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0
2025-07-11 18:57:44,999 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 18:57:44,999 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,999 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 18:57:44,999 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,999 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 18:57:44,999 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:44,999 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 18:57:44,999 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 18:57:44,999 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 18:57:44,999 - 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 18:57:44,999 - 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 18:57:44,999 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:44,999 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:44,999 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:44,999 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:44,999 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:44,999 - 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 18:57:44,999 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'coord', 'position', 'location'}
2025-07-11 18:57:44,999 - 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 18:57:44,999 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,999 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:44,999 - 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 18:57:44,999 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:44,999 - 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 (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-11T18:57:44.990573", "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-11T18:57:44.991641", "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-11T18:57:44.991641", "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-11T18:57:44.992709", "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-11T18:57:44.992709", "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-11T18:57:44.993812", "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-11T18:57:44.993812", "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-11T18:57:44.994895", "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-11T18:57:44.994895", "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-11T18:57:44.996881", "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-11T18:57:44.996881", "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"
2025-07-11 18:57:45,000 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 0, 'data': [{'description': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T18:57:44.996881', 'wb_dr_pro_daily_report_id': 'example_string'}], 'message': "获取 'wb_dr_pro_daily_report' 列表成功"}
2025-07-11 18:57:45,000 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 0, 'data': [{'description': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T18:57:44.996881', 'wb_dr_pro_daily_report_id': 'example_string'}], 'message': "获取 'wb_dr_pro_daily_report' 列表成功"}
2025-07-11 18:57:45,000 - testcase.TC-SECURITY-002 - INFO - response_data:[{'description': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T18:57:44.996881', 'wb_dr_pro_daily_report_id': 'example_string'}]
2025-07-11 18:57:45,000 - testcase.TC-SECURITY-002 - INFO - response_data:{'description': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T18:57:44.996881', 'wb_dr_pro_daily_report_id': 'example_string'}
2025-07-11 18:57:45,000 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 18:57:45,000 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 18:57:45,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 18:57:45,000 - 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 18:57:45,000 - 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 18:57:45,000 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,000 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,000 - 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 18:57:45,000 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 18:57:45,000 - 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 18:57:45,000 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,000 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,000 - 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 18:57:45,000 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,000 - 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 18:57:45,001 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 18:57:45,001 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,001 - 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 18:57:45,001 - 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 18:57:45,001 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,001 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,001 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,001 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,001 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,001 - 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 18:57:45,001 - 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 18:57:45,001 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,001 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,001 - 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 18:57:45,001 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,001 - 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 18:57:45,002 - 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 18:57:45,002 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 18:57:45,002 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 18:57:45,002 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-001' 执行失败。
2025-07-11 18:57:45,002 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 失败
2025-07-11 18:57:45,002 - 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 18:57:45,002 - 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 18:57:45,002 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,002 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,002 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,002 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,002 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,002 - 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 18:57:45,002 - 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 18:57:45,002 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,002 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,002 - 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 18:57:45,002 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,002 - 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 18:57:45,003 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 18:57:45,003 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 18:57:45,003 - 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 18:57:45,003 - 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 18:57:45,003 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,003 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,003 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,003 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,003 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,003 - 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 18:57:45,003 - 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 18:57:45,003 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,003 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,003 - 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 18:57:45,003 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,003 - 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 18:57:45,004 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-004' 执行失败。
2025-07-11 18:57:45,004 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 失败
2025-07-11 18:57:45,004 - 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 18:57:45,004 - 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 18:57:45,004 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,004 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,004 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,004 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,004 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,004 - 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 18:57:45,004 - 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 18:57:45,004 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,004 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,004 - 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 18:57:45,004 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,004 - 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 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 18:57:45,005 - 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 18:57:45,005 - 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 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,005 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,005 - 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 18:57:45,005 - 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 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,005 - 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 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,005 - 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 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,005 - 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 18:57:45,005 - 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 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,005 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,005 - 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 18:57:45,005 - 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 18:57:45,005 - 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 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,005 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,006 - 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 18:57:45,006 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,006 - 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 18:57:45,006 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 18:57:45,006 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 18:57:45,006 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 18:57:45,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,006 - 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 18:57:45,006 - 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 18:57:45,006 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,006 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,006 - 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 18:57:45,006 - 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 18:57:45,006 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,006 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,006 - 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 18:57:45,007 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,007 - 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 18:57:45,007 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-RESTful-003' 执行失败。
2025-07-11 18:57:45,007 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 失败
2025-07-11 18:57:45,007 - 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 18:57:45,007 - 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 18:57:45,007 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,007 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,007 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,007 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,007 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,007 - 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 18:57:45,007 - 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 18:57:45,007 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,007 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,007 - 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 18:57:45,007 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,007 - 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 18:57:45,008 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 18:57:45,008 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,008 - 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 18:57:45,008 - 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 18:57:45,008 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,008 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,008 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,008 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,008 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,008 - 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 18:57:45,008 - 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 18:57:45,008 - 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 18:57:45,008 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,008 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,008 - 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 18:57:45,008 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,008 - 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 -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"
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
2025-07-11 18:57:45,009 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 18:57:45,009 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 18:57:45,009 - 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 18:57:45,009 - 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 18:57:45,009 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,009 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,009 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,009 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,009 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,009 - 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 18:57:45,009 - 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 18:57:45,009 - 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 18:57:45,009 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,009 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,009 - 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 18:57:45,009 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,009 - 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 18:57:45,009 - 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修改。
2025-07-11 18:57:45,010 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 18:57:45,010 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 18:57:45,010 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 18:57:45,010 - 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 18:57:45,010 - 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 18:57:45,010 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,010 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,010 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,010 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,010 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,010 - 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 18:57:45,010 - 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 18:57:45,010 - 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 18:57:45,010 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 18:57:45,010 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 18:57:45,010 - 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 18:57:45,010 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,010 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,010 - 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 18:57:45,010 - 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 18:57:45,010 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,010 - 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 18:57:45,010 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,010 - 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 18:57:45,010 - 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 18:57:45,010 - 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 18:57:45,010 - 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 18:57:45,010 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,010 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'NoneType'>
2025-07-11 18:57:45,011 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 18:57:45,011 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0007340908050537109
2025-07-11 18:57:45,011 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 18:57:45,011 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:45,011 - 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 18:57:45,011 - 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 18:57:45,011 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,011 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,011 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,011 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,011 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,011 - 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 18:57:45,011 - 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 18:57:45,011 - 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 18:57:45,011 - testcase.TC-ERROR-4001-BODY - DEBUG - No suitable request body schema found
2025-07-11 18:57:45,011 - 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 18:57:45,011 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Conclusion: No target field identified for request body type mismatch test.
2025-07-11 18:57:45,011 - 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 18:57:45,011 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,011 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,011 - 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 18:57:45,011 - 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 18:57:45,011 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,011 - 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 18:57:45,011 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,011 - 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 18:57:45,011 - 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 18:57:45,011 - 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 18:57:45,011 - 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 18:57:45,011 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,011 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'NoneType'>
2025-07-11 18:57:45,012 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Skipped type mismatch (body) validation: No target field was identified.
2025-07-11 18:57:45,012 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0006318092346191406
2025-07-11 18:57:45,012 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-BODY' 执行成功。
2025-07-11 18:57:45,012 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 通过
2025-07-11 18:57:45,012 - 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 18:57:45,012 - 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 18:57:45,012 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,012 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,012 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,012 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,012 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,012 - 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 18:57:45,012 - 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 18:57:45,012 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 18:57:45,012 - testcase.TC-ERROR-4002 - DEBUG - No suitable request body schema found
2025-07-11 18:57:45,012 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters.
2025-07-11 18:57:45,012 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters.
2025-07-11 18:57:45,012 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters.
2025-07-11 18:57:45,012 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location.
2025-07-11 18:57:45,012 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint.
2025-07-11 18:57:45,012 - 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 18:57:45,012 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,012 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,012 - 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 18:57:45,012 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,012 - 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 18:57:45,012 - 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 18:57:45,012 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 18:57:45,012 - 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 18:57:45,012 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,012 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'NoneType'>
2025-07-11 18:57:45,013 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0006000995635986328
2025-07-11 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。
2025-07-11 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过
2025-07-11 18:57:45,013 - 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 18:57:45,013 - 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 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,013 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,013 - 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 18:57:45,013 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 18:57:45,013 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 18:57:45,013 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 18:57:45,013 - 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 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,013 - 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 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,013 - 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 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 18:57:45,013 - 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 18:57:45,013 - 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 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,014 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,014 - 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 18:57:45,014 - testcase.TC-ERROR-4003-BODY - INFO - 此端点规范中未定义或找到请求体 schema通过基类方法
2025-07-11 18:57:45,014 - 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 18:57:45,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,014 - 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 18:57:45,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,014 - 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 18:57:45,014 - testcase.TC-ERROR-4003-BODY - INFO - 由于未识别到可移除的必填请求体字段,跳过此测试用例的验证。
2025-07-11 18:57:45,014 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-BODY' 执行成功。
2025-07-11 18:57:45,014 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 通过
2025-07-11 18:57:45,014 - 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 18:57:45,014 - 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 18:57:45,014 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,014 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,014 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,014 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,014 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,014 - 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 18:57:45,014 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 18:57:45,014 - 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 18:57:45,014 - 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 18:57:45,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'list_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,014 - 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 18:57:45,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,014 - 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 18:57:45,015 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 18:57:45,015 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 18:57:45,015 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:45,015 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:45,015 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:45,015 - root - INFO - relevant_failed_tcs: []
2025-07-11 18:57:45,015 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0' 测试完成,最终状态: 通过
2025-07-11 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,015 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,015 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('id') 的 schema...
2025-07-11 18:57:45,015 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,015 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - 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 18:57:45,015 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'read_wb_dr_pro_daily_report': {'id': 'param_id'}
2025-07-11 18:57:45,015 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'read_wb_dr_pro_daily_report': None
2025-07-11 18:57:45,015 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'read_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,015 - 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 18:57:45,015 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'id': 'param_id'}
2025-07-11 18:57:45,015 - 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 18:57:45,016 - 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 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-STATUS-001' 执行失败。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 失败
2025-07-11 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-HEADER-001' 被跳过。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 跳过
2025-07-11 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-SECURITY-002' 被跳过。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 跳过
2025-07-11 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-LLM-COMPLIANCE-001' 被跳过。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 跳过
2025-07-11 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-001' 被跳过。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 跳过
2025-07-11 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-DMS-PAGINATION-001' 被跳过。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 跳过
2025-07-11 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-004' 被跳过。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 跳过
2025-07-11 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-002' 被跳过。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 跳过
2025-07-11 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-DMS-CORE-SCHEMA-001' 被跳过。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 跳过
2025-07-11 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-CORE-FUNC-001' 被跳过。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 跳过
2025-07-11 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-RESTful-003' 被跳过。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 跳过
2025-07-11 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-DMS-URL-VERSION-001' 被跳过。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 跳过
2025-07-11 18:57:45,016 - 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 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-CORE-FUNC-002' 被跳过。
2025-07-11 18:57:45,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 跳过
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-SECURITY-001' 被跳过。
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 跳过
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4001-QUERY' 被跳过。
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 跳过
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4001-BODY' 被跳过。
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 跳过
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4002' 被跳过。
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 跳过
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4006' 被跳过。
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 跳过
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4003-BODY' 被跳过。
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 跳过
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG -  ⏭️ 测试用例 'TC-ERROR-4003-QUERY' 被跳过。
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 跳过
2025-07-11 18:57:45,017 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:45,017 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:45,017 - root - INFO - relevant_failed_tcs: [<ddms_compliance_suite.test_orchestrator.ExecutedTestCaseResult object at 0x10351fcb0>]
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/wb_dr/v1/wb_dr_pro_daily_report/1.0.0/{id}' 测试完成,最终状态: 失败
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,017 - 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 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,017 - 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 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,017 - 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 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,017 - 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 18:57:45,017 - 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 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,017 - 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 18:57:45,017 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,017 - 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 18:57:45,017 - 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 18:57:45,017 - 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 18:57:45,017 - 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 18:57:45,017 - 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 18:57:45,017 - 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 18:57:45,017 - 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 18:57:45,017 - 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 18:57:45,017 - 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-11T18:57:45.017555
2025-07-11 18:57:45,017 - 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 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,017 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,017 - 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 18:57:45,018 - 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 18:57:45,018 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 18:57:45,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,018 - 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 18:57:45,018 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,018 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,018 - 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 18:57:45,018 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:45,018 - 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 18:57:45,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,018 - 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 18:57:45,018 - 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 18:57:45,018 - 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 18:57:45,018 - 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 18:57:45,018 - 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 18:57:45,018 - 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 18:57:45,018 - 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 18:57:45,018 - 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 18:57:45,018 - 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-11T18:57:45.018628
2025-07-11 18:57:45,018 - 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 18:57:45,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,018 - 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 18:57:45,019 - RequiredHeadersSchemaCheck - INFO - API端点: PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 18:57:45,019 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 18:57:45,019 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:45,019 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 18:57:45,019 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:45,019 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 18:57:45,019 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:45,019 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 18:57:45,019 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 18:57:45,019 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 18:57:45,019 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,019 - 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 18:57:45,019 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,019 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,019 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,019 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,019 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,019 - 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 18:57:45,019 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'coord', 'position', 'location'}
2025-07-11 18:57:45,019 - 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 18:57:45,019 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,019 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,019 - 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 18:57:45,019 - 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 18:57:45,019 - 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 18:57:45,019 - 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 18:57:45,019 - 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 18:57:45,019 - 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 18:57:45,019 - 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 18:57:45,019 - 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 18:57:45,019 - 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-11T18:57:45.019752
2025-07-11 18:57:45,019 - 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 18:57:45,019 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,019 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,019 - 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 -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-11T18:57:45.017555", "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-11T18:57:45.017555", "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-11T18:57:45.018628", "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-11T18:57:45.018628", "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 18:57:45,020 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 18:57:45,020 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 0, 'data': True, 'message': '创建成功'}
2025-07-11 18:57:45,020 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 18:57:45,020 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 18:57:45,020 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 18:57:45,020 - 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 18:57:45,020 - 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 18:57:45,020 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,020 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,020 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,020 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,020 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,020 - 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 18:57:45,020 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 18:57:45,020 - 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 18:57:45,020 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,020 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,020 - 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 18:57:45,020 - 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 18:57:45,020 - 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 18:57:45,020 - 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 18:57:45,020 - 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 18:57:45,020 - 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 18:57:45,020 - 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 18:57:45,020 - 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 18:57:45,020 - 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-11T18:57:45.020868
2025-07-11 18:57:45,020 - 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 18:57:45,020 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,020 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,020 - 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 18:57:45,021 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 18:57:45,021 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,021 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,021 - 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 18:57:45,021 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,021 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,021 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,021 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,021 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,021 - 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 18:57:45,021 - 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 18:57:45,021 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,021 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,021 - 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 18:57:45,021 - 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 18:57:45,021 - 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 18:57:45,021 - 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 18:57:45,021 - 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 18:57:45,021 - 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 18:57:45,021 - 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 18:57:45,021 - 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 18:57:45,021 - 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-11T18:57:45.021872
2025-07-11 18:57:45,021 - 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 18:57:45,021 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,021 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,021 - 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 18:57:45,022 - 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 18:57:45,022 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
2025-07-11 18:57:45,022 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 18:57:45,022 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。
2025-07-11 18:57:45,022 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,022 - 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 18:57:45,022 - 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 18:57:45,022 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,022 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,022 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,022 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,022 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,022 - 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 18:57:45,022 - 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 18:57:45,022 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,022 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,022 - 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 18:57:45,022 - 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 18:57:45,022 - 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 18:57:45,022 - 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 18:57:45,022 - 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 18:57:45,022 - 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 18:57:45,022 - 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 18:57:45,022 - 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 18:57:45,022 - 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-11T18:57:45.022916
2025-07-11 18:57:45,022 - 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 18:57:45,022 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,022 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,022 - 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 18:57:45,023 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 18:57:45,023 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 18:57:45,023 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,023 - 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 18:57:45,023 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,023 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,023 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,023 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,023 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,023 - 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 18:57:45,023 - 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 18:57:45,023 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,023 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,023 - 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 18:57:45,023 - 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 18:57:45,023 - 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 18:57:45,023 - 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 18:57:45,023 - 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 18:57:45,023 - 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 18:57:45,023 - 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 18:57:45,023 - 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 18:57:45,023 - 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-11T18:57:45.023841
2025-07-11 18:57:45,023 - 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 18:57:45,023 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,023 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,023 - 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 18:57:45,025 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-004' 执行成功。
2025-07-11 18:57:45,025 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 通过
2025-07-11 18:57:45,025 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,025 - 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 18:57:45,025 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,025 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,025 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,025 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,025 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,025 - 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 18:57:45,025 - 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 18:57:45,025 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,025 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,025 - 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 18:57:45,025 - 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 18:57:45,025 - 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 18:57:45,025 - 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 18:57:45,025 - 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 18:57:45,025 - 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 18:57:45,025 - 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 18:57:45,025 - 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 18:57:45,025 - 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-11T18:57:45.025258
2025-07-11 18:57:45,025 - 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 18:57:45,025 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,025 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,025 - 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 18:57:45,026 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 18:57:45,026 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 18:57:45,026 - 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 18:57:45,026 - 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 18:57:45,026 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,026 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,026 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,026 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,026 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,026 - 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 18:57:45,026 - 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 18:57:45,026 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,026 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,026 - 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 18:57:45,026 - 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 18:57:45,026 - 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 18:57:45,026 - 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 18:57:45,026 - 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 18:57:45,026 - 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 18:57:45,026 - 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 18:57:45,026 - 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 18:57:45,026 - 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-11T18:57:45.026325
2025-07-11 18:57:45,026 - 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 18:57:45,026 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,026 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,026 - 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 18:57:45,027 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 18:57:45,027 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,027 - 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 18:57:45,027 - 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 18:57:45,027 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,027 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,027 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,027 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,027 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,027 - 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 18:57:45,027 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:45,027 - 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 18:57:45,027 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,027 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,027 - 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 18:57:45,027 - 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 18:57:45,027 - 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 18:57:45,027 - 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 18:57:45,027 - 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 18:57:45,027 - 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 18:57:45,027 - 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 18:57:45,027 - 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 18:57:45,027 - 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-11T18:57:45.027303
2025-07-11 18:57:45,027 - 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 18:57:45,027 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,027 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,027 - 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 (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-11T18:57:45.019752", "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-11T18:57:45.019752", "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-11T18:57:45.020868", "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-11T18:57:45.020868", "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-11T18:57:45.021872", "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-11T18:57:45.021872", "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-11T18:57:45.022916", "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-11T18:57:45.022916", "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-11T18:57:45.023841", "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-11T18:57:45.023841", "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-11T18:57:45.025258", "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-11T18:57:45.025258", "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-11T18:57:45.026325", "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-11T18:57:45.026325", "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 18:57:45,028 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 18:57:45,028 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 18:57:45,028 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 18:57:45,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,028 - 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 18:57:45,028 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,028 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,028 - 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 18:57:45,028 - 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 18:57:45,028 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,028 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,028 - 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 18:57:45,028 - 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 18:57:45,028 - 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 18:57:45,028 - 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 18:57:45,028 - 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 18:57:45,028 - 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 18:57:45,028 - 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 18:57:45,028 - 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 18:57:45,028 - 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-11T18:57:45.028365
2025-07-11 18:57:45,028 - 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 18:57:45,028 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,028 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,028 - 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 18:57:45,029 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。
2025-07-11 18:57:45,029 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过
2025-07-11 18:57:45,029 - 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 18:57:45,029 - 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 18:57:45,029 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,029 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,029 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,029 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,029 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,029 - 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 18:57:45,029 - 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 18:57:45,029 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,029 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,029 - 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 18:57:45,029 - 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 18:57:45,029 - 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 18:57:45,029 - 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 18:57:45,029 - 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 18:57:45,029 - 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 18:57:45,029 - 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 18:57:45,029 - 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 18:57:45,029 - 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-11T18:57:45.029281
2025-07-11 18:57:45,029 - 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 18:57:45,029 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,029 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,029 - 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 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,030 - 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 18:57:45,030 - 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 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,030 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,030 - 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 18:57:45,030 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:45,030 - 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 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,030 - 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 18:57:45,030 - 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 18:57:45,030 - 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 18:57:45,030 - 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 18:57:45,030 - 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 18:57:45,030 - 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 18:57:45,030 - 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 18:57:45,030 - 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 18:57:45,030 - 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-11T18:57:45.030259
2025-07-11 18:57:45,030 - 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 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,030 - 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 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 18:57:45,030 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,031 - 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 18:57:45,031 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,031 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,031 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,031 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,031 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,031 - 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 18:57:45,031 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:45,031 - 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 18:57:45,031 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,031 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,031 - 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 18:57:45,031 - 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 18:57:45,031 - 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 18:57:45,031 - 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 18:57:45,031 - 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 18:57:45,031 - 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 18:57:45,031 - 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 18:57:45,031 - 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 18:57:45,031 - 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-11T18:57:45.031193
2025-07-11 18:57:45,031 - 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 18:57:45,031 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,031 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,031 - 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 18:57:45,031 - 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 18:57:45,031 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 18:57:45,031 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 18:57:45,031 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 18:57:45,031 - 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 18:57:45,032 - 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 18:57:45,032 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,032 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,032 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,032 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,032 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,032 - 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 18:57:45,032 - 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 18:57:45,032 - 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 18:57:45,032 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 18:57:45,032 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 18:57:45,032 - 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 18:57:45,032 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,032 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,032 - 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 18:57:45,032 - 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 18:57:45,032 - 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 18:57:45,032 - 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 18:57:45,032 - 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 18:57:45,032 - 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 18:57:45,032 - 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 18:57:45,032 - 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 18:57:45,032 - 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-11T18:57:45.032208
2025-07-11 18:57:45,032 - 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 18:57:45,032 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,032 - 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 18:57:45,032 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,032 - 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 18:57:45,032 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,032 - 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 18:57:45,032 - 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 18:57:45,032 - 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 18:57:45,032 - 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 18:57:45,032 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,032 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:45,033 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 18:57:45,033 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0006859302520751953
2025-07-11 18:57:45,033 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 18:57:45,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,033 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json
2025-07-11 18:57:45,033 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema...
2025-07-11 18:57:45,033 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string
2025-07-11 18:57:45,033 - 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 18:57:45,033 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string
2025-07-11 18:57:45,033 - 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 18:57:45,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - 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-11T18:57:45.033300
2025-07-11 18:57:45,033 - 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 18:57:45,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,033 - 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 18:57:45,033 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,033 - 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 18:57:45,033 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'.
2025-07-11 18:57:45,033 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345'
2025-07-11 18:57:45,033 - 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 18:57:45,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - 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 18:57:45,033 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,033 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:45,034 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0006568431854248047
2025-07-11 18:57:45,034 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。
2025-07-11 18:57:45,034 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败
2025-07-11 18:57:45,034 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,034 - 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 18:57:45,034 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,034 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,034 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,034 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,034 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,034 - 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 18:57:45,034 - 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 18:57:45,034 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 18:57:45,034 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json
2025-07-11 18:57:45,034 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body.
2025-07-11 18:57:45,034 - testcase.TC-ERROR-4002 - DEBUG - 在路径 data.0.record_count 找到范围受限字段。
2025-07-11 18:57:45,034 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Found ranged numeric field in BODY at path: data.0.record_count
2025-07-11 18:57:45,034 - 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 18:57:45,034 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Setting out-of-range value to 10001 (max is 10000).
2025-07-11 18:57:45,034 - 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 18:57:45,034 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,034 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,034 - 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 18:57:45,034 - 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 18:57:45,034 - 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 18:57:45,034 - 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 18:57:45,034 - 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 18:57:45,034 - 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 18:57:45,034 - 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 18:57:45,034 - 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 18:57:45,034 - 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-11T18:57:45.034394
2025-07-11 18:57:45,034 - 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 18:57:45,034 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,034 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 data.0.record_count (键 'record_count') 处设置值为 '10001'
2025-07-11 18:57:45,034 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Successfully injected out-of-range value into parameters.
2025-07-11 18:57:45,034 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,034 - 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 18:57:45,034 - 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 18:57:45,034 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 18:57:45,034 - 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 18:57:45,034 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,034 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
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-11T18:57:45.027303", "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-11T18:57:45.027303", "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-11T18:57:45.028365", "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-11T18:57:45.028365", "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-11T18:57:45.029281", "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-11T18:57:45.029281", "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-11T18:57:45.030259", "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-11T18:57:45.030259", "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-11T18:57:45.031193", "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-11T18:57:45.031193", "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-11T18:57:45.032208", "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-11T18:57:45.032208", "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-11T18:57:45.033300", "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-11T18:57:45.033300", "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 18:57:45,035 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0006802082061767578
2025-07-11 18:57:45,035 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4002' 执行失败。
2025-07-11 18:57:45,035 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 失败
2025-07-11 18:57:45,035 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,035 - 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 18:57:45,035 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,035 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,035 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,035 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,035 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,035 - 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 18:57:45,035 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 18:57:45,035 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 18:57:45,035 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 18:57:45,035 - 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 18:57:45,035 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,035 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,035 - 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 18:57:45,035 - 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 18:57:45,035 - 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 18:57:45,035 - 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 18:57:45,035 - 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 18:57:45,035 - 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 18:57:45,035 - 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 18:57:45,035 - 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 18:57:45,035 - 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-11T18:57:45.035468
2025-07-11 18:57:45,035 - 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 18:57:45,035 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,035 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,035 - 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 18:57:45,036 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 18:57:45,036 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 18:57:45,036 - 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 18:57:45,036 - 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 18:57:45,036 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,036 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,036 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,036 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,036 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,036 - 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 18:57:45,036 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['data'], 属性: ['version', 'act', 'data']
2025-07-11 18:57:45,036 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'data'
2025-07-11 18:57:45,036 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data'
2025-07-11 18:57:45,036 - 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 18:57:45,036 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,036 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,036 - 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 18:57:45,036 - 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 18:57:45,036 - 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 18:57:45,036 - 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 18:57:45,036 - 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 18:57:45,036 - 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 18:57:45,036 - 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 18:57:45,036 - 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 18:57:45,036 - 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-11T18:57:45.036432
2025-07-11 18:57:45,036 - 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 18:57:45,036 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,036 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'data' 成功移除字段 'data' (原值: '[{'description': 'example_string', 'record_count': 0, 'status': 'active', 'update_date': '2025-07-11T18:57:45.036432', 'wb_dr_pro_daily_report_id': 'example_string'}]')。
2025-07-11 18:57:45,036 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data'。
2025-07-11 18:57:45,036 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,036 - 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 18:57:45,037 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。
2025-07-11 18:57:45,037 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败
2025-07-11 18:57:45,037 - 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 18:57:45,037 - 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 18:57:45,037 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,037 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,037 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,037 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,037 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,037 - 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 18:57:45,037 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 18:57:45,037 - 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 18:57:45,037 - 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 18:57:45,037 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,037 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'update_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,037 - 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 18:57:45,037 - 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 18:57:45,037 - 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 18:57:45,037 - 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 18:57:45,037 - 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 18:57:45,037 - 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 18:57:45,037 - 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 18:57:45,037 - 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 18:57:45,037 - 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-11T18:57:45.037422
2025-07-11 18:57:45,037 - 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 18:57:45,037 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'update_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,037 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,037 - 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 18:57:45,038 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:45,038 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:45,038 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:45,038 - root - INFO - relevant_failed_tcs: []
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 测试完成,最终状态: 通过
2025-07-11 18:57:45,038 - 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 18:57:45,038 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,038 - 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 18:57:45,038 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,038 - 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 18:57:45,038 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-004' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,038 - 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 18:57:45,038 - 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 18:57:45,038 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,038 - 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 18:57:45,038 - 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 18:57:45,038 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,038 - 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 18:57:45,038 - 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 18:57:45,038 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'。
2025-07-11 18:57:45,038 - 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 18:57:45,038 - 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 18:57:45,038 - 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 18:57:45,038 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,038 - 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 18:57:45,038 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,038 - 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 18:57:45,038 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:45,038 - 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 18:57:45,038 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,038 - 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 18:57:45,038 - 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 18:57:45,038 - 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 18:57:45,038 - 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 18:57:45,038 - 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 18:57:45,038 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,038 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,038 - 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 18:57:45,039 - 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 18:57:45,039 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-07-11 18:57:45,039 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,039 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,039 - 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 18:57:45,039 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,039 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,039 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,039 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,039 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,039 - 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 18:57:45,039 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:45,039 - 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 18:57:45,039 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,039 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,039 - 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 18:57:45,039 - 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 18:57:45,039 - 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 18:57:45,039 - 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 18:57:45,039 - 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 18:57:45,039 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,039 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,039 - 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 18:57:45,040 - RequiredHeadersSchemaCheck - INFO - API端点: DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report
2025-07-11 18:57:45,040 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: []
2025-07-11 18:57:45,040 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:45,040 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID
2025-07-11 18:57:45,040 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:45,040 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain
2025-07-11 18:57:45,040 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=False, 必需=False, 名称=None
2025-07-11 18:57:45,040 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 Authorization
2025-07-11 18:57:45,040 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-07-11 18:57:45,040 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-07-11 18:57:45,040 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,040 - 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 18:57:45,040 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,040 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,040 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,040 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,040 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,040 - 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 18:57:45,040 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'coord', 'position', 'location'}
2025-07-11 18:57:45,040 - 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 18:57:45,040 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,040 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,040 - 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 18:57:45,040 - 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 18:57:45,040 - 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 18:57:45,040 - 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 18:57:45,040 - 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 18:57:45,040 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,040 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,040 - 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 18:57:45,041 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 404, 'data': False, 'message': '未找到要删除的资源'}
2025-07-11 18:57:45,041 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 404, 'data': False, 'message': '未找到要删除的资源'}
2025-07-11 18:57:45,041 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。
2025-07-11 18:57:45,041 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。
2025-07-11 18:57:45,041 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过
2025-07-11 18:57:45,041 - 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 18:57:45,041 - 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 18:57:45,041 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,041 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,041 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,041 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,041 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,041 - 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 18:57:45,041 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: []
2025-07-11 18:57:45,041 - 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 18:57:45,041 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,041 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,041 - 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 18:57:45,041 - 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 18:57:45,041 - 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 18:57:45,041 - 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 18:57:45,041 - 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 18:57:45,041 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,041 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,041 - 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 18:57:45,042 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。
2025-07-11 18:57:45,042 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,042 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,042 - 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 18:57:45,042 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,042 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,042 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,042 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,042 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,042 - 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 18:57:45,042 - 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 18:57:45,042 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,042 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,042 - 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 18:57:45,042 - 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 18:57:45,042 - 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 18:57:45,042 - 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 18:57:45,042 - 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 18:57:45,042 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,042 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,042 - 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 18:57:45,043 - 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 18:57:45,043 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200']
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-11T18:57:45.034394", "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: 210\' -d \'{"version": "1.0.0", "act": 0, "data": [{"description": "example_string", "record_count": 10001, "status": "active", "update_date": "2025-07-11T18:57:45.034394", "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-11T18:57:45.035468", "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-11T18:57:45.035468", "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-11T18:57:45.037422", "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-11T18:57:45.037422", "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
2025-07-11 18:57:45,043 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义
2025-07-11 18:57:45,043 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。
2025-07-11 18:57:45,043 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,043 - 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 18:57:45,043 - 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 18:57:45,043 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,043 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,043 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,043 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,043 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,043 - 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 18:57:45,043 - 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 18:57:45,043 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,043 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,043 - 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 18:57:45,043 - 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 18:57:45,043 - 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 18:57:45,043 - 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 18:57:45,043 - 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 18:57:45,043 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,043 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,043 - 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 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-DMS-PAGINATION-001' 执行失败。
2025-07-11 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 失败
2025-07-11 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-004' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,044 - 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 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,044 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,044 - 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 18:57:45,044 - 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 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,044 - 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 18:57:45,044 - 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 18:57:45,044 - 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 18:57:45,044 - 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 18:57:45,044 - 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 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,044 - 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 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-004' 执行成功。
2025-07-11 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-004' 执行完毕,状态: 通过
2025-07-11 18:57:45,044 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,044 - 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 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,045 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,045 - 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 18:57:45,045 - 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 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,045 - 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 18:57:45,045 - 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 18:57:45,045 - 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 18:57:45,045 - 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 18:57:45,045 - 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 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,045 - 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 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。
2025-07-11 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过
2025-07-11 18:57:45,045 - 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 18:57:45,045 - 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 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,045 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,045 - 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 18:57:45,045 - 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 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,045 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,045 - 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 18:57:45,046 - 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 18:57:45,046 - 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 18:57:45,046 - 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 18:57:45,046 - 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 18:57:45,046 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,046 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,046 - 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 18:57:45,046 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。
2025-07-11 18:57:45,046 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,046 - 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 18:57:45,046 - 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 18:57:45,046 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,046 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,046 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,046 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,046 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,046 - 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 18:57:45,046 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:45,046 - 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 18:57:45,046 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,046 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,046 - 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 18:57:45,046 - 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 18:57:45,046 - 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 18:57:45,046 - 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 18:57:45,046 - 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 18:57:45,046 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,046 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,046 - 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 18:57:45,047 - ddms_compliance_suite.utils.schema_provider - DEBUG - 尝试从API规范中为状态码 200 查找Schema。
2025-07-11 18:57:45,047 - testcase.TC-CORE-FUNC-001 - INFO - 将根据从API规范中获取的schema验证响应体。
2025-07-11 18:57:45,047 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。
2025-07-11 18:57:45,047 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,047 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,047 - 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 18:57:45,047 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,047 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,047 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,047 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,047 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,047 - 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 18:57:45,047 - 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 18:57:45,047 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,047 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,047 - 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 18:57:45,047 - 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 18:57:45,047 - 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 18:57:45,047 - 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 18:57:45,047 - 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 18:57:45,047 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,047 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,047 - 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 18:57:45,048 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。
2025-07-11 18:57:45,048 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过
2025-07-11 18:57:45,048 - 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 18:57:45,048 - 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 18:57:45,048 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,048 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,048 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,048 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,048 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,048 - 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 18:57:45,048 - 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 18:57:45,048 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,048 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,048 - 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 18:57:45,048 - 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 18:57:45,048 - 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 18:57:45,048 - 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 18:57:45,048 - 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 18:57:45,048 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,048 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,048 - 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 18:57:45,049 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。
2025-07-11 18:57:45,049 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过
2025-07-11 18:57:45,049 - 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 18:57:45,049 - 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 18:57:45,049 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,049 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,049 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,049 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,049 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,049 - 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 18:57:45,049 - testcase.TC-CORE-FUNC-002 - INFO - 测试用例 'TC-CORE-FUNC-002' 已为端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:45,049 - 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 18:57:45,049 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,049 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,049 - 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 18:57:45,049 - 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 18:57:45,049 - 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 18:57:45,049 - 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 18:57:45,049 - 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 18:57:45,049 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,049 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,049 - 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 18:57:45,050 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-002' 执行成功。
2025-07-11 18:57:45,050 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-002' 执行完毕,状态: 通过
2025-07-11 18:57:45,050 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,050 - 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 18:57:45,050 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,050 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,050 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,050 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,050 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,050 - 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 18:57:45,050 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 初始化。
2025-07-11 18:57:45,050 - 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 18:57:45,050 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,050 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,050 - 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 18:57:45,050 - 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 18:57:45,050 - 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 18:57:45,050 - 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 18:57:45,050 - 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 18:57:45,050 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,050 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,050 - 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 18:57:45,050 - 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 18:57:45,051 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞API允许通过HTTP成功响应 (200)。
2025-07-11 18:57:45,051 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。
2025-07-11 18:57:45,051 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败
2025-07-11 18:57:45,051 - 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 18:57:45,051 - 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 18:57:45,051 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,051 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,051 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,051 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,051 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,051 - 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 18:57:45,051 - 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 18:57:45,051 - 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 18:57:45,051 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters.
2025-07-11 18:57:45,051 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test.
2025-07-11 18:57:45,051 - 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 18:57:45,051 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,051 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,051 - 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 18:57:45,051 - 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 18:57:45,051 - 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 18:57:45,051 - 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 18:57:45,051 - 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 18:57:45,051 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,051 - 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 18:57:45,051 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,051 - 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 18:57:45,051 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,051 - 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 18:57:45,051 - 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 18:57:45,051 - 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 18:57:45,051 - 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 18:57:45,051 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,051 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
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_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 18:57:45,052 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified.
2025-07-11 18:57:45,052 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.0006961822509765625
2025-07-11 18:57:45,052 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。
2025-07-11 18:57:45,052 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:45,052 - 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 18:57:45,052 - 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 18:57:45,052 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,052 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,052 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,052 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,052 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,052 - 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 18:57:45,052 - 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 18:57:45,052 - 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 18:57:45,052 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json
2025-07-11 18:57:45,052 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema...
2025-07-11 18:57:45,052 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string
2025-07-11 18:57:45,052 - 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 18:57:45,052 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string
2025-07-11 18:57:45,052 - 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 18:57:45,052 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,052 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,052 - 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 18:57:45,052 - 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 18:57:45,052 - 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 18:57:45,052 - 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 18:57:45,052 - 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 18:57:45,052 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,052 - 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 18:57:45,052 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,052 - 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 18:57:45,052 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'.
2025-07-11 18:57:45,052 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345'
2025-07-11 18:57:45,052 - 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 18:57:45,052 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,052 - 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 18:57:45,052 - 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 18:57:45,052 - 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 18:57:45,052 - 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 18:57:45,052 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,052 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:45,053 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.0006220340728759766
2025-07-11 18:57:45,053 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。
2025-07-11 18:57:45,053 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败
2025-07-11 18:57:45,053 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,053 - 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 18:57:45,053 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,053 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,053 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,053 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,053 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,053 - 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 18:57:45,053 - 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 18:57:45,053 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field...
2025-07-11 18:57:45,053 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json
2025-07-11 18:57:45,053 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body.
2025-07-11 18:57:45,053 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters.
2025-07-11 18:57:45,053 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters.
2025-07-11 18:57:45,053 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters.
2025-07-11 18:57:45,053 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location.
2025-07-11 18:57:45,053 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint.
2025-07-11 18:57:45,053 - 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 18:57:45,053 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,053 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,053 - 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 18:57:45,053 - 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 18:57:45,053 - 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 18:57:45,053 - 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 18:57:45,053 - 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 18:57:45,053 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,053 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,053 - 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 18:57:45,053 - 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 18:57:45,053 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook.
2025-07-11 18:57:45,053 - 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 18:57:45,053 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['Content-Type', 'Accept']
2025-07-11 18:57:45,053 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: <class 'dict'>
2025-07-11 18:57:45,054 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.0006330013275146484
2025-07-11 18:57:45,054 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。
2025-07-11 18:57:45,054 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过
2025-07-11 18:57:45,054 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report'
2025-07-11 18:57:45,054 - 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 18:57:45,054 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,054 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,054 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,054 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,054 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,054 - 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 18:57:45,054 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints...
2025-07-11 18:57:45,054 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location.
2025-07-11 18:57:45,054 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint.
2025-07-11 18:57:45,054 - 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 18:57:45,054 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,054 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,054 - 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 18:57:45,054 - 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 18:57:45,054 - 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 18:57:45,054 - 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 18:57:45,054 - 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 18:57:45,054 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,054 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,054 - 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 18:57:45,055 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。
2025-07-11 18:57:45,055 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过
2025-07-11 18:57:45,055 - 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 18:57:45,055 - 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 18:57:45,055 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,055 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,055 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,055 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,055 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,055 - 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 18:57:45,055 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['data'], 属性: ['version', 'data']
2025-07-11 18:57:45,055 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'data'
2025-07-11 18:57:45,055 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data'
2025-07-11 18:57:45,055 - 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 18:57:45,055 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,055 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,055 - 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 18:57:45,055 - 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 18:57:45,055 - 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 18:57:45,055 - 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 18:57:45,055 - 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 18:57:45,055 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,055 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'data' 成功移除字段 'data' (原值: '[{'description': 'example_string'}]')。
2025-07-11 18:57:45,055 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data'。
2025-07-11 18:57:45,055 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,055 - 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 18:57:45,056 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。
2025-07-11 18:57:45,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败
2025-07-11 18:57:45,056 - 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 18:57:45,056 - 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 18:57:45,056 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['dms_api_list']
2025-07-11 18:57:45,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas 进行 $ref 解析...
2025-07-11 18:57:45,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema...
2025-07-11 18:57:45,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema...
2025-07-11 18:57:45,056 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 <class 'ddms_compliance_suite.input_parser.parser.DMSEndpoint'>) 中的 schemas $ref 解析完成。
2025-07-11 18:57:45,056 - 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 18:57:45,056 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec.
2025-07-11 18:57:45,056 - 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 18:57:45,056 - 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 18:57:45,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete_wb_dr_pro_daily_report': application/json
2025-07-11 18:57:45,056 - 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 18:57:45,056 - 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 18:57:45,056 - 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 18:57:45,056 - 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 18:57:45,056 - 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 18:57:45,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete_wb_dr_pro_daily_report' (type: <class 'dict'>)
2025-07-11 18:57:45,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {}
2025-07-11 18:57:45,056 - 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 18:57:45,057 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过
2025-07-11 18:57:45,057 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:45,057 - root - INFO - strictness_level: TestSeverity.CRITICAL
2025-07-11 18:57:45,057 - root - INFO - relevant_failed_tcs: []
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/wb_dr/v1/wb_dr_pro_daily_report' 测试完成,最终状态: 通过
2025-07-11 18:57:45,057 - __main__ - INFO - 开始执行API测试阶段 (Stages),目录: ./custom_stages
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行API测试阶段 (Stages)...
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - INFO - 发现了 1 个已定义的测试阶段: ['dms_crud_scenario_stage']
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - WARNING - 未知的解析规范类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedDMSSpec'>。将阶段应用于整个规范 (api_group_name=None).
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - INFO - 将针对 1 个API分组评估测试阶段: [None]
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - INFO - 处理测试阶段定义: ID='dms_crud_scenario_stage', Name='DMS Full CRUD Scenario'
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备阶段 'dms_crud_scenario_stage' 的上下文针对API分组: 'Global'
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - For Global context, selected 10 endpoint objects.
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - 为阶段 'dms_crud_scenario_stage' 和分组 'Global' 实例化。API对象数量: 10. 元数据: {'name': 'Global (所有API)', 'description': '适用于规范中的所有API'}
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - 检查阶段 'dms_crud_scenario_stage' 是否适用于API分组 'Global'...
2025-07-11 18:57:45,057 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Found complete CRUD scenario for DMS resource: 'lujing_test'
2025-07-11 18:57:45,057 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Found complete CRUD scenario for DMS resource: 'wb_dr_pro_daily_report'
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'dms_crud_scenario_stage' 适用于API分组 'Global'。开始执行...
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试阶段: ID='dms_crud_scenario_stage', Name='DMS Full CRUD Scenario', API分组='Global'
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - 调用 stage 'dms_crud_scenario_stage' 的 before_stage 钩子。初始上下文: {}
2025-07-11 18:57:45,057 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Setting up before_stage for scenario: ['create', 'list', 'read', 'update', 'delete']
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 开始执行.
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 调用 before_step 钩子. 上下文: {'pk_name': 'description', 'pk_value': 'b54b5f8c-01ac-49c2-a846-2bdb8454b087', '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 18:57:45,057 - 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 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 查找端点定义. Key='CREATE', Group='None'
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 已解析端点 'POST /api/dms/wb_ml/v1/lujing_test'. 准备请求数据.
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'create_lujing_test': application/json
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'create_lujing_test': application/json
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 object 类型数据 for (context: create_lujing_test_body). Properties: ['version', 'act', 'data']
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.version): 1.0.0
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 使用 schema 中的 'example' 值 for (context: create_lujing_test_body.act): 0
2025-07-11 18:57:45,057 - 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 18:57:45,057 - 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 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].description): example_string
2025-07-11 18:57:45,057 - 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 18:57:45,057 - 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 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('') for (context: create_lujing_test_body.data[0].status): active
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [create_lujing_test] 生成 string 类型数据 ('date-time') for (context: create_lujing_test_body.data[0].update_date): 2025-07-11T18:57:45.057534
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'create_lujing_test' (type: <class 'dict'>)
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 应用请求覆盖: {'body': {'data': ['{{stage_context.current_payload}}']}}
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'Step 1: Create Resource'] 解析上下文路径: 'current_payload' 来自模板 '{{stage_context.current_payload}}'
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'Step 1: Create Resource'] 从上下文解析到值 '{'description': 'test-entry-from-scenario'}...' (路径: 'current_payload')
2025-07-11 18:57:45,057 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 发送API请求: POST http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 收到响应. Status: 400. 验证中...
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - WARNING - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 预期状态码为 [200, 201], 实际为 400.
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 执行断言 'validate_response_is_true'
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - WARNING - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 断言 'validate_response_is_true' 失败: Expected response data to be true, but it was 'None'.
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 提取输出到上下文. Map: {}
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 调用 after_step 钩子.
2025-07-11 18:57:45,058 - 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 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'dms_crud_scenario_stage', Step 'Step 1: Create Resource': 执行完毕. 状态: 失败, 耗时: 0.00s
2025-07-11 18:57:45,058 - 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 18:57:45,058 - ddms_compliance_suite.test_orchestrator - DEBUG - 调用 stage 'dms_crud_scenario_stage' 的 after_stage 钩子. 当前阶段结果状态: 失败
2025-07-11 18:57:45,058 - ddms_compliance_suite.stage_framework.DmsCrudScenarioStage - INFO - Finished scenario 1/2 for this group.
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'dms_crud_scenario_stage' (API分组: 'Global') 执行完毕. 最终状态: 失败, 耗时: 0.00s
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - API Test Stage execution processed. Considered 1 (stage_definition x api_group) combinations.
2025-07-11 18:57:45,058 - __main__ - INFO - API测试阶段 (Stages) 执行完毕。
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - -------------------- API Test Summary --------------------
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Start Time: 2025-07-11T18:57:44.878856
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - End Time: 2025-07-11T18:57:45.058583
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Total Duration: 0.18 seconds
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - --- Endpoints ---
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Total Endpoints Defined: 10
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Endpoints Tested: 10
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Passed: 8
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Failed: 2
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Error: 0
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Skipped: 0
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Partial Success: 0
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Success Rate: 80.00%
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - --- Test Cases ---
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Total Test Cases Applicable: 200
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Total Test Cases Executed: 200
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Passed: 112
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Failed: 50
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Error: 0
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Skipped (within endpoints): 38
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Success Rate: 56.00%
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - --- Stages ---
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Total Stages Defined: 1
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Total Stages Executed: 2
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Passed: 0
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Failed: 2
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Error: 0
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Skipped: 0
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - Success Rate: 0.00%
2025-07-11 18:57:45,058 - ddms_compliance_suite.test_orchestrator - INFO - --------------------------------------------------------
2025-07-11 18:57:45,062 - __main__ - INFO - 测试结果已保存为JSON: test_reports/2025-07-11_18-57-44/summary.json
2025-07-11 18:57:45,062 - __main__ - INFO - 开始生成PDF报告: test_reports/2025-07-11_18-57-44/report_cn.pdf
2025-07-11 18:57:45,197 - __main__ - INFO - PDF报告已成功生成: test_reports/2025-07-11_18-57-44/report_cn.pdf
2025-07-11 18:57:45,201 - __main__ - INFO - API调用详情已保存为 Markdown: test_reports/2025-07-11_18-57-44/api_call_details.md
2025-07-11 18:57:45,201 - __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'
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: 55' -d '{"data": [{"description": "test-entry-from-scenario"}]}' --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: 55\' -d \'{"data": [{"description": "test-entry-from-scenario"}]}\' --insecure http://127.0.0.1:5001/api/dms/wb_ml/v1/lujing_test'